Журнал лабораторных работ

Содержание

Журнал

Понедельник (01/11/10)

/dev/ttyp8
16:07:19
#[root@fbsd3:ports]# cd /usr/ports/shells/bash-completion
[root@fbsd3:ports]# make search name=bash-completion
Port:   bash-completion-20060301_2
Path:   /usr/ports/shells/bash-completion
Info:   Programmable completion library for Bash 2.04 and up
Maint:  kirk@strauser.com
B-deps:
R-deps: bash-3.2.25 gettext-0.16.1_3 libiconv-1.11_1
WWW:    http://www.caliban.org/bash/index.shtml
16:09:12
#[root@fbsd3:bash-completion]# . ~/.bashrc
if [ -f . /usr/local/etc/bash_completion; then
fi
    fi
   fi
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"~/.bashrc" 5 lines, 130 characters written
16:09:30
#[root@fbsd3:cowsay]# make install
[root@fbsd3:bash-completion]# cd /usr/ports/games/cowsay/
16:09:44
#[root@fbsd3:cowsay]# make clean
[root@fbsd3:cowsay]# echo Hello | cowsay
bash: /usr/local/bin/cowsay: No such file or directory
===>  Cleaning for cowsay-3.03_1
16:09:58
#[root@fbsd3:cowsay]# echo Hello | cowsay
[root@fbsd3:cowsay]# make install
===>  Vulnerability check disabled, database not found
===>  Extracting for cowsay-3.03_1
=> MD5 Checksum OK for cowsay-3.03.tar.gz.
=> SHA256 Checksum OK for cowsay-3.03.tar.gz.
===>   cowsay-3.03_1 depends on file: /usr/local/bin/perl5.8.8 - found
===>  Patching for cowsay-3.03_1
===>   cowsay-3.03_1 depends on file: /usr/local/bin/perl5.8.8 - found
===>  Applying FreeBSD patches for cowsay-3.03_1
===>   cowsay-3.03_1 depends on file: /usr/local/bin/perl5.8.8 - found
...
===>   Compressing manual pages for cowsay-3.03_1
===>   Registering installation for cowsay-3.03_1
 _______
< Hello >
 -------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
16:10:00
#[root@fbsd3:cowsay]# pkg_delete cowsay-3.03_1
[root@fbsd3:cowsay]# pkg_delete co
compositeproto-0.4  cowsay-3.03_1
16:10:31
#[root@fbsd3:cowsay]# exit
exit
Connection to 192.168.16.23 closed.
16:10:51
#. /etc/bash.bashrc
 18 # set a fancy prompt (non-color, overwrite the one in /etc/profile)$
 19 PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '$
 20 $
 21 # Commented out, don't overwrite xterm -T "title" -n "icontitle" by defaa
    ult.$
 22 # If this is an xterm set the title to user@host:dir$
 23 #case "$TERM" in$
 24 #xterm*|rxvt*)$
 25 #    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'$
 26 #    ;;$
 27 #*)$
 28 #    ;;$
 29 #esac$
 30 $
 31 # enable bash completion in interactive shells$
 32 if [ -f /etc/bash_completion ]; then$
 33     . /etc/bash_completion$
 34 fi$
~
"/etc/bash.bashrc" 34L, 1068C written
root@debian1:/tmp# . ~/.bashrc
16:11:09
#apt-get install bind
[root@debian1:tmp]# apt-get install bind
bind        bind-doc    bind9-doc   bindgraph
bind-dev    bind9       bind9-host
bind        bind-doc    bind9-doc   bindgraph
bind-dev    bind9       bind9-host
16:11:09
#apt-get install bind
bind        bind-doc    bind9-doc   bindgraph
bind-dev    bind9       bind9-host
16:11:09
#apt-cache
[root@debian1:tmp]# apt-get
autoclean        clean            install          update
build-dep        dist-upgrade     remove           upgrade
check            dselect-upgrade  source
add        dump       madison    rdepends   showpkg    unmet
depends    dumpavail  pkgnames   search     showsrc    xvcg
dotty      gencaches  policy     show       stats
16:12:02
#. /et
[root@debian1:tmp]# apt-cache
16:12:14
#date
Mon Jan 11 17:12:17 EET 2010

Вторник (01/12/10)

/dev/ttyp0
08:23:09
#manintro
[root@debian1:bin]# namei
usage: namei [-mx] pathname [pathname ...]
bash: manintro: command not found
прошло 17 минут
08:41:07
#man
08:41:07
#man
08:41:07
#man -a intro
/dev/ttyp8
08:41:26
#man -a intro
/dev/ttyp0
08:42:25
#info
08:43:10
#pwd
/bin
08:43:49
#~/
bash: /root/: is a directory
08:43:53
#pwd
/bin
08:43:59
#~
bash: /root: is a directory
08:44:04
#pwd
/bin
08:44:08
#cd

08:44:15
#pwd
/root
08:44:18
#man mkfifo
08:45:52
#set
BASH=/bin/bash
BASH_ARGC=()
BASH_ARGV=()
BASH_LINENO=()
BASH_SOURCE=()
BASH_VERSINFO=([0]="3" [1]="1" [2]="17" [3]="1" [4]="release" [5]="i486-pc-linux-gnu")
BASH_VERSION='3.1.17(1)-release'
COLUMNS=80
DIFFNAME=115222705270348897-1263190788_1263219092_root_.vimrc.diff
DIR=
...
MACHTYPE=i486-pc-linux-gnu
MAIL=/var/mail/root
MAILCHECK=60
OLDPWD=/bin
OPTERR=1
OPTIND=1
OSTYPE=linux-gnu
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PIPESTATUS=([0]="0")
PPID=1913
прошла 21 минута
09:07:43
#patch

/dev/ttyp8
09:07:54
#LS
[root@debian1:tmp]# echo $
$BASH                 $IFS                  $RANDOM
$BASH_ARGC            $L3_HOME              $SECONDS
$BASH_ARGV            $L3_PARENT_TTY        $SHELL
$BASH_COMMAND         $L3_SESSION_ID        $SHELLOPTS
$BASH_COMPLETION      $L3_TAMPERED_EDITORS  $SHLVL
$BASH_COMPLETION_DIR  $LANG                 $SSH_CLIENT
$BASH_LINENO          $LINENO               $SSH_CONNECTION
$BASH_SOURCE          $LINES                $SSH_TTY
$BASH_SUBSHELL        $LOGNAME              $STY
...
$EUID                 $OPTIND               $a
$GROUPS               $OSTYPE               $bash205
$HISTCMD              $PATH                 $bash205b
$HISTFILE             $PIPESTATUS           $bash3
$HISTFILESIZE         $PPID                 $editor_file
$HISTSIZE             $PS1                  $editor_name
$HOME                 $PS2                  $old_file
$HOSTNAME             $PS4
$HOSTTYPE             $PWD
bash: LS: command not found
/dev/ttyp0
09:07:55
#echo $
$_                    $HISTFILESIZE         $OPTIND
$BASH                 $HISTSIZE             $OSTYPE
$BASH_ARGC            $HOME                 $PATH
$BASH_ARGV            $HOSTNAME             $PIPESTATUS
$BASH_COMMAND         $HOSTTYPE             $PPID
$BASH_LINENO          $IFS                  $PS1
$BASH_SOURCE          $L3_HOME              $PS2
$BASH_SUBSHELL        $L3_PARENT_TTY        $PS4
$BASH_VERSINFO        $L3_SESSION_ID        $PWD
$BASH_VERSION         $L3_TAMPERED_EDITORS  $RANDOM
...
$DIFFNAME             $LINES                $SHELLOPTS
$DIR                  $LOGNAME              $SHLVL
$DIRSTACK             $LS_COLORS            $SSH_CLIENT
$editor_file          $LS_OPTIONS           $SSH_CONNECTION
$editor_name          $MACHTYPE             $SSH_TTY
$ERR                  $MAIL                 $TERM
$EUID                 $MAILCHECK            $TIME
$GROUPS               $old_file             $UID
$HISTCMD              $OLDPWD               $USER
$HISTFILE             $OPTERR
09:07:55
#echo $path

09:08:41
#mc
09:09:58
#man ed
09:10:10
#vim /etc/hosts
09:10:34
#man tracert
09:10:46
#man trace
09:10:49
#man route
/dev/ttyp8
09:11:27
#LS
bash: LS: command not found
09:11:29
#ls
123   2009       fileperm1                 hard_link_to_file_copy
2     bind       find                      passwd
2007  fifo       hard_link_to_file         v218742
2008  filename1  hard_link_to_file_backup  zmanDW1PTG
/dev/ttyp0
09:11:30
#ls
1234
09:11:34
#touch a

/dev/ttyp8
09:11:40
#touch ab
[root@debian1:tmp]# touch a
09:11:42
#touch abc

09:11:43
#touch abcd

09:11:46
#echo *
[root@debian1:tmp]# touch abcde
123 2 2007 2008 2009 a ab abc abcd abcde bind fifo filename1 fileperm1 find hard_link_to_file hard_link_to_file_backup hard_link_to_file_copy passwd v218742 zmanDW1PTG
/dev/ttyp0
09:11:51
#touch ab

09:11:52
#touch abc

09:11:54
#echo *
1234 a ab abc
/dev/ttyp8
09:11:57
#ls
123   2008  ab    abcde  filename1  hard_link_to_file         passwd
2     2009  abc   bind   fileperm1  hard_link_to_file_backup  v218742
2007  a     abcd  fifo   find       hard_link_to_file_copy    zmanDW1PTG
/dev/ttyp0
09:12:01
#ls
1234  a  ab  abc
09:12:11
#echo .
. .. .bash_history .bash_profile .bashrc .gconf .gconfd .l3rc .lesshst .lilalo .mozilla .profile .ssh .viminfo .vimrc
/dev/ttyp8
09:12:13
#echo *
[root@debian1:tmp]# ls -1
123
2
2007
2008
2009
a
ab
abc
abcd
...
filename1
fileperm1
find
hard_link_to_file
hard_link_to_file_backup
hard_link_to_file_copy
passwd
v218742
zmanDW1PTG
123 2 2007 2008 2009 a ab abc abcd abcde bind fifo filename1 fileperm1 find hard_link_to_file hard_link_to_file_backup hard_link_to_file_copy passwd v218742 zmanDW1PTG
/dev/ttyp0
09:12:42
#echo .
. 1234 a ab abc
/dev/ttyp8
09:12:46
#echo -a .*
[root@debian1:tmp]# echo .*
. .. .ICE-unix .X0-lock .X11-unix .gdm_socket
-a . .. .ICE-unix .X0-lock .X11-unix .gdm_socket
/dev/ttyp0
09:12:58
#echo .* *
. .. .bash_history .bash_profile .bashrc .gconf .gconfd .l3rc .lesshst .lilalo .mozilla .profile .ssh .viminfo .vimrc 1234 a ab abc
09:13:05
#echo .'
>
>
>
/dev/ttyp8
09:13:09
#echo ..* *
[root@debian1:tmp]# echo .* *
. .. .ICE-unix .X0-lock .X11-unix .gdm_socket 123 2 2007 2008 2009 a ab abc abcd abcde bind fifo filename1 fileperm1 find hard_link_to_file hard_link_to_file_backup hard_link_to_file_copy passwd v218742 zmanDW1PTG
.. 123 2 2007 2008 2009 a ab abc abcd abcde bind fifo filename1 fileperm1 find hard_link_to_file hard_link_to_file_backup hard_link_to_file_copy passwd v218742 zmanDW1PTG
/dev/ttyp0
09:14:21
#echo .'* *
       -E     disable interpretation of backslash escapes (default)
       --help display this help and exit
       --version
              output version information and exit
       If -e is in effect, the following sequences are recognized:
       \0NNN  the character whose ASCII code is NNN (octal)
       \\     backslash
       \a     alert (BEL)
       \b     backspace
       \c     suppress trailing newline
...
       <http://www.gnu.org/licenses/gpl.html>.   There  is NO WARRANTY, to the
       extent permitted by law.tion of backslash escapes
SEE ALSOr     carriage returnetation of backslash escapes (default)
       The full documentation for echo is maintained as a Texinfo manual.   If
       the  info  and  echo  programs are properly installed at your site, the
       command
       \v     vertical tab
              info echorsion information and exit
       NOTE: your shell may have its own version of echo, which usually super‐
       should give you access to the complete manual.r to your  shell’s  docu‐
09:14:21
#echo .

09:14:21
#echo .'* *

09:14:21
#echo .

/dev/ttyp8
09:14:38
#echo ?
[root@debian1:tmp]# echo .[^.]* *
.ICE-unix .X0-lock .X11-unix .gdm_socket 123 2 2007 2008 2009 a ab abc abcd abcde bind fifo filename1 fileperm1 find hard_link_to_file hard_link_to_file_backup hard_link_to_file_copy passwd v218742 zmanDW1PTG
2 a
/dev/ttyp0
09:14:48
#echo .[^.]*
[root@debian1:~]# echo .* *
. .. .bash_history .bash_profile .bashrc .gconf .gconfd .l3rc .lesshst .lilalo .mozilla .profile .ssh .viminfo .vimrc 1234 a ab abc
.bash_history .bash_profile .bashrc .gconf .gconfd .l3rc .lesshst .lilalo .mozilla .profile .ssh .viminfo .vimrc
09:15:08
#echo .[^.]* *
.bash_history .bash_profile .bashrc .gconf .gconfd .l3rc .lesshst .lilalo .mozilla .profile .ssh .viminfo .vimrc 1234 a ab abc
09:15:17
#echo ??
ab
/dev/ttyp8
09:16:00
#ls -ld ?
[root@debian1:tmp]# ls -l ?
-rw-r--r-- 1 root root  0 Jan 12 10:11 a
2:
total 0
drwxr-xr-x 2 root root 48 Jan 11 12:03 2
-rw-r--r-- 1 root root  0 Jan 12 10:11 a
/dev/ttyp0
09:16:09
#echo ?
a
09:16:11
#touch '-1'
touch: invalid option -- 1
Попробуйте `touch --help' для получения более подробного описания.
/dev/ttyp8
09:16:19
#ls -ld ???
[root@debian1:tmp]# ls -ld ??
-rw-r--r-- 1 root root 0 Jan 12 10:11 ab
drwxr-xr-x 2 root root 48 Jan 11 16:32 123
-rw-r--r-- 1 root root  0 Jan 12 10:11 abc
09:16:21
#ls -ld ????
drwxr-xr-x 14 root root    336 Jan 11 12:06 2007
drwxr-xr-x 14 root root    336 Jan 11 12:06 2008
drwxr-xr-x 14 root root    336 Jan 11 12:06 2009
-rw-r--r--  1 root root      0 Jan 12 10:11 abcd
-rw-r--r--  1 root root  10464 Jan 11 16:56 bind
prw-r--r--  1 root root      0 Jan 11 11:59 fifo
-rw-r--r--  1 root root 301812 Jan 11 16:48 find
09:16:39
#ls -ld [^0-9]
[root@debian1:tmp]# ls -ld [^0-9]
-rw-r--r-- 1 root root 0 Jan 12 10:11 a
-rw-r--r-- 1 root root 0 Jan 12 10:11 a
09:17:14
#ls
123   2008  ab    abcde  filename1  hard_link_to_file         passwd
2     2009  abc   bind   fileperm1  hard_link_to_file_backup  v218742
2007  a     abcd  fifo   find       hard_link_to_file_copy    zmanDW1PTG
09:17:27
#ls -ld [^0-9]*[^0-9]
[root@debian1:tmp]# ls -ld [^0-9]*
-rw-r--r-- 1 root root      0 Jan 12 10:11 a
-rw-r--r-- 1 root root      0 Jan 12 10:11 ab
-rw-r--r-- 1 root root      0 Jan 12 10:11 abc
-rw-r--r-- 1 root root      0 Jan 12 10:11 abcd
-rw-r--r-- 1 root root      0 Jan 12 10:11 abcde
-rw-r--r-- 1 root root  10464 Jan 11 16:56 bind
prw-r--r-- 1 root root      0 Jan 11 11:59 fifo
-rw-r--r-- 1 root root   4825 Jan 11 14:42 filename1
-rw-r--r-- 1 root root      0 Jan 11 16:30 fileperm1
...
-rw-r--r-- 1 root root      0 Jan 12 10:11 abcd
-rw-r--r-- 1 root root      0 Jan 12 10:11 abcde
-rw-r--r-- 1 root root  10464 Jan 11 16:56 bind
prw-r--r-- 1 root root      0 Jan 11 11:59 fifo
-rw-r--r-- 1 root root 301812 Jan 11 16:48 find
-rw-r--r-- 1 root root   2652 Jan 11 11:55 hard_link_to_file
-rw-r--r-- 1 root root   2652 Jan 11 12:08 hard_link_to_file_backup
-rw-r--r-- 1 root root   2652 Jan 11 12:07 hard_link_to_file_copy
-rw-r--r-- 1 root root   9347 Jan 11 17:02 passwd
-rw------- 1 root root   1493 Jan 12 09:42 zmanDW1PTG
09:18:11
#ls a?
[root@debian1:tmp]# ls a?.doc
ls: a?.doc: No such file or directory
ab
09:18:13
#ls
123   2008  ab    abcde  filename1  hard_link_to_file         passwd
2     2009  abc   bind   fileperm1  hard_link_to_file_backup  v218742
2007  a     abcd  fifo   find       hard_link_to_file_copy    zmanDW1PTG
/dev/ttyp6
09:18:13
#screen -x
/dev/ttyp8
09:18:32
#echo *
[root@debian1:tmp]# ls *
a    abcd   fifo       find                      hard_link_to_file_copy
ab   abcde  filename1  hard_link_to_file         passwd
abc  bind   fileperm1  hard_link_to_file_backup  zmanDW1PTG
123:
2:
2007:
01  02  03  04  05  06  07  08  09  10  11  12
2008:
01  02  03  04  05  06  07  08  09  10  11  12
2009:
01  02  03  04  05  06  07  08  09  10  11  12
v218742:
123 2 2007 2008 2009 a ab abc abcd abcde bind fifo filename1 fileperm1 find hard_link_to_file hard_link_to_file_backup hard_link_to_file_copy passwd v218742 zmanDW1PTG
09:18:42
#ls *
a    abcd   fifo       find                      hard_link_to_file_copy
ab   abcde  filename1  hard_link_to_file         passwd
abc  bind   fileperm1  hard_link_to_file_backup  zmanDW1PTG
123:
2:
2007:
01  02  03  04  05  06  07  08  09  10  11  12
2008:
01  02  03  04  05  06  07  08  09  10  11  12
2009:
01  02  03  04  05  06  07  08  09  10  11  12
v218742:
09:19:12
#echo /*/*/*/*/* | xargs ls -l
lrwxrwxrwx   1 root    root           17 Jul  4  2008 /proc/1/cwd/lib/libncurses.so.5 -> libncurses.so.5.5
-rw-r--r--   1 root    root       263040 Oct 19  2006 /proc/1/cwd/lib/libncurses.so.5.5
lrwxrwxrwx   1 root    root           18 Jul  4  2008 /proc/1/cwd/lib/libncursesw.so.5 -> libncursesw.so.5.5
-rw-r--r--   1 root    root       308288 Oct 19  2006 /proc/1/cwd/lib/libncursesw.so.5.5
-rw-r--r--   1 root    root        72452 Jan 19  2008 /proc/1/cwd/lib/libnsl-2.3.6.so
lrwxrwxrwx   1 root    root           15 Jul  4  2008 /proc/1/cwd/lib/libnsl.so.1 -> libnsl-2.3.6.so
-rw-r--r--   1 root    root        26332 Jan 19  2008 /proc/1/cwd/lib/libnss_compat-2.3.6.so
lrwxrwxrwx   1 root    root           22 Jul  4  2008 /proc/1/cwd/lib/libnss_compat.so.2 -> libnss_compat-2.3.6.so
-rw-r--r--   1 root    root        17840 Jan 19  2008 /proc/1/cwd/lib/libnss_dns-2.3.6.so
lrwxrwxrwx   1 root    root           19 Jul  4  2008 /proc/1/cwd/lib/libnss_dns.so.2 -> libnss_dns-2.3.6.so
...
-rwxr-xr-x   1 root    root         5980 Mar  7  2007 /proc/1/cwd/sbin/logsave
-rwxr-xr-x   1 root    root        24884 Feb 21  2007 /proc/1/cwd/sbin/losetup
lrwxrwxrwx   1 root    root           10 Jul  4  2008 /proc/1/cwd/sbin/lsmod -> /bin/lsmod
lrwxrwxrwx   1 root    root           15 Jul  4  2008 /proc/1/cwd/sbin/lsmod.modutils -> insmod.modutils
-rwxr-xr-x   1 root    root        10776 Dec  4  2005 /proc/1/cwd/sbin/mii-tool
-rwxr-xr-x   1 root    root        39616 Mar  7  2007 /proc/1/cwd/sbin/mke2fs
-rwxr-xr-x   1 root    root         5116 Feb 21  2007 /proc/1/cwd/sbin/mkfs
-rwxr-xr-x   1 root    root        14560 Feb 21  2007 /proc/1/cwd/sbin/mkfs.cramfs
-rwxr-xr-x   1 root    root        39616 Mar  7  2007 /proc/1/cwd/sbin/mkfs.ext2
-rwxr-xr-x   1 root    root        39616 Mar  7  2007 /proc/1/cwd/sbin/mkfs.ext3
09:20:36
#\
(reverse-i-search)`mkdir ':
>
09:20:44
#mkdir -vp 200{4,5,6}/{0{1,2,3,4,5,6,7,8,9},1{0,1,2}}
[root@debian1:tmp]# history | grep mkdir
  224  mkdir 1
  228  mkdir 1/2/3/4/5
  229  mkdir -pv 1/2/3/4/5
  238  mkdir -vp 200{7,8,9}/{0{1,2,3,4,5,6,7,8,9},1{0,1,2}}
  274  mkdir 123
  377  history | grep mkdir
mkdir: created directory `2004'
mkdir: created directory `2004/01'
mkdir: created directory `2004/02'
...
mkdir: created directory `2006/03'
mkdir: created directory `2006/04'
mkdir: created directory `2006/05'
mkdir: created directory `2006/06'
mkdir: created directory `2006/07'
mkdir: created directory `2006/08'
mkdir: created directory `2006/09'
mkdir: created directory `2006/10'
mkdir: created directory `2006/11'
mkdir: created directory `2006/12'
09:21:38
#ps aux | awk {print$2}
[root@debian1:tmp]# ps aux | less
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.1   1960   648 ?        Ss   Jan09   0:00 init [2]
root         2  0.0  0.0      0     0 ?        S    Jan09   0:00 [migration/
0]
root         3  0.0  0.0      0     0 ?        SN   Jan09   0:00 [ksoftirqd/
0]
root         4  0.0  0.0      0     0 ?        S<   Jan09   0:00 [events/0]
root         5  0.0  0.0      0     0 ?        S<   Jan09   0:00 [khelper]
root         6  0.0  0.0      0     0 ?        S<   Jan09   0:00 [kthread]
...
root      8364  0.0  0.2   5060  1368 ttyp1    T    09:41   0:00 man -a intro
root      8472  0.0  0.1   4872   824 ttyp1    T    09:42   0:00 pager -s
root      8719  0.0  0.1   4672   624 ttyp1    T    10:09   0:00 ed
root      9155  0.3  0.3   7708  2352 ?        Ss   10:17   0:00 sshd: root@ttyp6
root      9165  0.0  0.1   4716   680 ttyp6    Ss+  10:18   0:00 script -f -q /root/.lilalo//10051136943226131377-1263284292.script
root      9204  0.0  0.0   4844   472 ttyp6    S+   10:18   0:00 script -f -q /root/.lilalo//10051136943226131377-1263284292.script
root      9205  0.0  0.4   6568  2592 ttyp7    Ss   10:18   0:00 bash -i
root      9252  0.0  0.1   5564  1016 ttyp7    S+   10:18   0:00 screen -x
root      9442  0.0  0.1   2236   892 ttyp9    R+   10:21   0:00 ps aux
root      9443  0.0  0.0   1808   432 ttyp9    R+   10:21   0:00 awk {print}
09:22:17
#mkdir -vp 200{4,5,6}/{0{1,2,3,4,5,6,7,8,9},1{0,1,2}}
[root@debian1:tmp]# ps aux | awk '{print$2}'
PID
1
2
3
4
5
6
7
8
...
8364
8472
8719
9155
9165
9204
9205
9252
9451
9452
09:22:55
#touch \-1
[root@debian1:tmp]# touch -1
touch: invalid option -- 1
Try `touch --help' for more information.
touch: invalid option -- 1
Try `touch --help' for more information.
09:23:08
#touch -- -1
[root@debian1:tmp]# touch "-1"
touch: invalid option -- 1
Try `touch --help' for more information.
09:23:20
#ls -l
total 344
-rw-r--r--  1 root root      0 Jan 12 10:23 -1
drwxr-xr-x  2 root root     48 Jan 11 16:32 123
drwxr-xr-x  2 root root     48 Jan 11 12:03 2
drwxr-xr-x 14 root root    336 Jan 12 10:21 2004
drwxr-xr-x 14 root root    336 Jan 12 10:21 2005
drwxr-xr-x 14 root root    336 Jan 12 10:21 2006
drwxr-xr-x 14 root root    336 Jan 11 12:06 2007
drwxr-xr-x 14 root root    336 Jan 11 12:06 2008
drwxr-xr-x 14 root root    336 Jan 11 12:06 2009
...
prw-r--r--  1 root root      0 Jan 11 11:59 fifo
-rw-r--r--  1 root root   4825 Jan 11 14:42 filename1
-rw-r--r--  1 root root      0 Jan 11 16:30 fileperm1
-rw-r--r--  1 root root 301812 Jan 11 16:48 find
-rw-r--r--  1 root root   2652 Jan 11 11:55 hard_link_to_file
-rw-r--r--  1 root root   2652 Jan 11 12:08 hard_link_to_file_backup
-rw-r--r--  1 root root   2652 Jan 11 12:07 hard_link_to_file_copy
-rw-r--r--  1 root root   9347 Jan 11 17:02 passwd
drwx------  2 root root     48 Jan 11 14:15 v218742
-rw-------  1 root root   1493 Jan 12 09:42 zmanDW1PTG
09:23:27
#uname -a
[root@debian1:tmp]# ls -l | head
total 344
-rw-r--r--  1 root root      0 Jan 12 10:23 -1
drwxr-xr-x  2 root root     48 Jan 11 16:32 123
drwxr-xr-x  2 root root     48 Jan 11 12:03 2
drwxr-xr-x 14 root root    336 Jan 12 10:21 2004
drwxr-xr-x 14 root root    336 Jan 12 10:21 2005
drwxr-xr-x 14 root root    336 Jan 12 10:21 2006
drwxr-xr-x 14 root root    336 Jan 11 12:06 2007
drwxr-xr-x 14 root root    336 Jan 11 12:06 2008
drwxr-xr-x 14 root root    336 Jan 11 12:06 2009
Linux debian1 2.6.18-5-xen-686 #1 SMP Fri Jun 1 05:05:24 UTC 2007 i686 GNU/Linux
/dev/ttyp0
09:23:34
#touch --

09:23:50
#ls
-1  1234  a  ab  abc
09:23:53
#unanme -a
bash: unanme: command not found
09:24:14
#una
Linux debian1 2.6.18-5-xen-686 #1 SMP Fri Jun 1 05:05:24 UTC 2007 i686 GNU/Linux
/dev/ttyp8
09:24:16
#ls -l /lib/modules/`uname -r`/modules.*
[root@debian1:tmp]# uname -r
2.6.18-5-xen-686
-rw-r--r-- 1 root root 302076 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.alias
-rw-r--r-- 1 root root     69 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.ccwmap
-rw-r--r-- 1 root root 312299 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.dep
-rw-r--r-- 1 root root    813 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.ieee1394map
-rw-r--r-- 1 root root    730 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.inputmap
-rw-r--r-- 1 root root  17450 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.isapnpmap
-rw-r--r-- 1 root root     74 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.ofmap
-rw-r--r-- 1 root root 246982 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.pcimap
-rw-r--r-- 1 root root   1135 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.seriomap
-rw-r--r-- 1 root root 131866 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.symbols
-rw-r--r-- 1 root root 333772 Feb 17  2008 /lib/modules/2.6.18-5-xen-686/modules.usbmap
09:25:22
#ls
[root@debian1:tmp]# ls -l /lib/modules/`uname -r`/modules.*
-1    2006  ab     fifo               hard_link_to_file_backup
123   2007  abc    filename1          hard_link_to_file_copy
2     2008  abcd   fileperm1          passwd
2004  2009  abcde  find               v218742
2005  a     bind   hard_link_to_file  zmanDW1PTG
09:25:26
#date
Tue Jan 12 10:25:28 EET 2010
$(k); `k`
09:26:30
##touch `date`
[root@debian1:tmp]# date
Tue Jan 12 10:26:30 EET 2010
09:26:49
#ls
-1    2006  ab     fifo               hard_link_to_file_backup
123   2007  abc    filename1          hard_link_to_file_copy
2     2008  abcd   fileperm1          passwd
2004  2009  abcde  find               v218742
2005  a     bind   hard_link_to_file  zmanDW1PTG
/dev/ttyp0
09:26:56
#man wc
/dev/ttyp8
09:27:00
#ls
[root@debian1:tmp]# cd 2

Статистика

Время первой команды журнала16:07:19 2010- 1-11
Время последней команды журнала09:27:00 2010- 1-12
Количество командных строк в журнале99
Процент команд с ненулевым кодом завершения, %14.14
Процент синтаксически неверно набранных команд, % 7.07
Суммарное время работы с терминалом *, час 1.15
Количество командных строк в единицу времени, команда/мин 1.44
Частота использования команд
echo22|====================| 20.75%
ls19|=================| 17.92%
man10|=========| 9.43%
touch10|=========| 9.43%
[root@fbsd3:cowsay]#5|====| 4.72%
pwd4|===| 3.77%
mkdir2|=| 1.89%
`k`2|=| 1.89%
.2|=| 1.89%
#^2|=| 1.89%
LS2|=| 1.89%
apt-get2|=| 1.89%
date2|=| 1.89%
[root@fbsd3:bash-completion]#1|| 0.94%
cowsay1|| 0.94%
screen1|| 0.94%
awk1|| 0.94%
#touch1|| 0.94%
manintro1|| 0.94%
cd1|| 0.94%
unanme1|| 0.94%
info1|| 0.94%
set1|| 0.94%
~1|| 0.94%
\1|| 0.94%
patch1|| 0.94%
ps1|| 0.94%
[root@fbsd3:ports]#1|| 0.94%
vim1|| 0.94%
xargs1|| 0.94%
una1|| 0.94%
apt-cache1|| 0.94%
uname1|| 0.94%
mc1|| 0.94%
~/1|| 0.94%
____
*) Интервалы неактивности длительностью 30 минут и более не учитываются

Справка

Для того чтобы использовать LiLaLo, не нужно знать ничего особенного: всё происходит само собой. Однако, чтобы ведение и последующее использование журналов было как можно более эффективным, желательно иметь в виду следующее:
  1. В журнал автоматически попадают все команды, данные в любом терминале системы.

  2. Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.

  3. Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
    $ l s-l
    bash: l: command not found
    

  4. Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
    $ test 5 -lt 4
    Обратите внимание на то, что код завершения команды может быть отличен от нуля не только в тех случаях, когда команда была выполнена с ошибкой. Многие команды используют код завершения, например, для того чтобы показать результаты проверки

  5. Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
    $ find / -name abc
    find: /home/devi-orig/.gnome2: Keine Berechtigung
    find: /home/devi-orig/.gnome2_private: Keine Berechtigung
    find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung
    find: /home/devi-orig/.metacity: Keine Berechtigung
    find: /home/devi-orig/.inkscape: Keine Berechtigung
    ^C
    

  6. Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
    # id
    uid=0(root) gid=0(root) Gruppen=0(root)
    

  7. Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
    $ vi ~/.bashrc
    2a3,5
    >    if [ -f /usr/local/etc/bash_completion ]; then
    >         . /usr/local/etc/bash_completion
    >        fi
    

  8. Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
    $ patch ~/.bashrc
    В данном случае изменения применяются к файлу ~/.bashrc

  9. Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.

    Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.

  10. Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.

  11. Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора

  12. Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.

  13. Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.

  14. Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:

    $ whoami
    
    user
    
    $ #^ Интересно, кто я?
    
    в журнале это будет выглядеть так:
    $ whoami
    
    user
    
    Интересно, кто я?

  15. Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:

    $ whoami
    
    user
    
    $ cat > /dev/null #^ Интересно, кто я?
    
    Программа whoami выводит имя пользователя, под которым 
    мы зарегистрировались в системе.
    -
    Она не может ответить на вопрос о нашем назначении 
    в этом мире.
    
    В журнале это будет выглядеть так:
    $ whoami
    user
    
    Интересно, кто я?
    Программа whoami выводит имя пользователя, под которым
    мы зарегистрировались в системе.

    Она не может ответить на вопрос о нашем назначении
    в этом мире.
    Для разделения нескольких абзацев между собой используйте символ "-", один в строке.

  16. Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=

  17. Содержимое файла может быть показано в журнале. Для этого его нужно вывести с помощью программы cat. Если вывод команды отметить симоволами #!, содержимое файла будет показано в журнале в специально отведённой для этого секции.
  18. Для того чтобы вставить скриншот интересующего вас окна в журнал, нужно воспользоваться командой l3shot. После того как команда вызвана, нужно с помощью мыши выбрать окно, которое должно быть в журнале.
  19. Команды в журнале расположены в хронологическом порядке. Если две команды давались одна за другой, но на разных терминалах, в журнале они будут рядом, даже если они не имеют друг к другу никакого отношения.
    1
        2
    3   
        4
    
    Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.

О программе

LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008

$Id$