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

Содержание

Журнал

Среда (05/19/10)

/dev/pts/0
09:42:40
$pstree -pl | grep 12402
        |                                        `-xterm(10391)---bash(10395)---screen(12338)---screen(12339)-+-bash(12340)---script(12361)---script(12401)---l3script(12402)-+-grep(13392)
09:42:57
$A=0

09:43:10
$echo $A
0
09:43:16
$bash
user@debian4:~$ pstree -lp
init(1)─┬─console-kit-dae(1085)─┬─{console-kit-da}(1086)
        │                       ├─{console-kit-da}(1087)
        │                       ├─{console-kit-da}(1088)
        │                       ├─{console-kit-da}(1089)
        │                       ├─{console-kit-da}(1090)
        │                       ├─{console-kit-da}(1091)
        │                       ├─{console-kit-da}(1092)
        │                       ├─{console-kit-da}(1093)
        │                       ├─{console-kit-da}(1094)
...
$BASHOPTS                    $PIPESTATUS
$BASHPID                     $PPID
$BASH_SOURCE                 $PS1
$BASH_SUBSHELL               $PS2
$BASH_VERSINFO               $PS4
$BASH_VERSION                $PWD
$COLUMNS                     $RANDOM
user@debian4:~$ echo $^C
user@debian4:~$ exit
exit
09:44:21
$export $A
l3script: export: `0': неправильный идентификатор
09:44:30
$export A

09:44:34
$echo $A
0
09:44:39
$bash
user@debian4:~$ echo $A
0
user@debian4:~$ export B=9
user@debian4:~$ exit
exit
09:45:30
$echo $B

09:45:34
$echo $
$_                           $IFS
$A                           $L3_HOME
$BASH                        $L3_PARENT_TTY
$bash205                     $L3_SESSION_ID
$bash205b                    $L3_TAMPERED_EDITORS
$bash3                       $LANG
$bash4                       $LINENO
$BASH_ALIASES                $LINES
$BASH_ARGC                   $LOGNAME
$BASH_ARGV                   $LS_COLORS
...
$BASH_COMPLETION             $OLDPWD
$BASH_COMPLETION_COMPAT_DIR  $OPTERR
$BASH_COMPLETION_DIR         $OPTIND
$BASH_LINENO                 $OSTYPE
$BASHOPTS                    $PATH
$BASHPID                     $PIPESTATUS
$BASH_SOURCE                 $PPID
$BASH_SUBSHELL               $PS1
$BASH_VERSINFO               $PS2
$BASH_VERSION                $PS4
09:45:34
$whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz
09:46:21
$ls -l /usr/bin/pas
passwd  paste
09:46:21
$ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 34356 Июл 24  2009 /usr/bin/passwd
09:46:30
$ls -ld /tmp
drwxrwxrwt 10 root root 4096 Май 18 17:30 /tmp
09:48:31
$echo $A
0
09:50:02
$unset A

09:50:07
$echo $A

09:50:09
$echo $
$_                           $IFS
$BASH                        $L3_HOME
$bash205                     $L3_PARENT_TTY
$bash205b                    $L3_SESSION_ID
$bash3                       $L3_TAMPERED_EDITORS
$bash4                       $LANG
$BASH_ALIASES                $LINENO
$BASH_ARGC                   $LINES
$BASH_ARGV                   $LOGNAME
$BASH_CMDS                   $LS_COLORS
...
$BASH_COMPLETION_COMPAT_DIR  $OLDPWD
$BASH_COMPLETION_DIR         $OPTERR
$BASH_LINENO                 $OPTIND
$BASHOPTS                    $OSTYPE
$BASHPID                     $PATH
$BASH_SOURCE                 $PIPESTATUS
$BASH_SUBSHELL               $PPID
$BASH_VERSINFO               $PS1
$BASH_VERSION                $PS2
$COLUMNS                     $PS4
09:50:09
$readonly A=0

09:50:30
$export A

09:50:34
$A=1
l3script: A: доступная только на чтение переменная
09:50:41
$unset A
l3script: unset: A: не могу сбросить: доступно только для чтения variable
09:50:45
$bash
user@debian4:~$ echo $A
0
user@debian4:~$ A=1
user@debian4:~$ echo $A
1
user@debian4:~$ exit
exit
09:52:15
$vim positional_parameters
--- /dev/null	2010-05-14 20:22:43.633692287 +0300
+++ positional_parameters	2010-05-19 10:52:34.000000000 +0300
@@ -0,0 +1,2 @@
+#!/bin/bash
+
09:52:34
$vim positional_parameters
--- /tmp/l3-saved-12402.7491.9830	2010-05-19 10:52:34.000000000 +0300
+++ positional_parameters	2010-05-19 10:56:21.000000000 +0300
@@ -1,2 +1,9 @@
 #!/bin/bash
-
+echo "zerro pozitional parameter is: $0"
+echo "first pozitional parameter is: $1"
+echo "second pozitional parameter is: $2"
+echo "third pozitional parameter is: $3"
+echo "fourth pozitional parameter is: $4"
+echo "fivth pozitional parameter is: $5"
+echo "sixth pozitional parameter is: $6"
+echo "seventh pozitional parameter is: $7"
09:56:21
$ls -l positional_parameters
-rw-r--r-- 1 user user 344 Май 19 10:56 positional_parameters
09:56:27
$./positional_parameters
l3script: ./positional_parameters: Отказано в доступе
09:56:29
$chmod +x ./positional_parameters

09:56:40
$./positional_parameters ras dva tri 4 5 6 7
zerro pozitional parameter is: ./positional_parameters
first pozitional parameter is: ras
second pozitional parameter is: dva
third pozitional parameter is: tri
fourth pozitional parameter is: 4
fivth pozitional parameter is: 5
sixth pozitional parameter is: 6
seventh pozitional parameter is: 7
09:56:56
$./positional_parameters ras dva tri 4 5 6 7 ^C

09:57:43
$vim /etc/init.d/
09:57:43
$vim /etc/init.d/ssh
10:06:37
$test -d /etc ; ech0$?
l3script: ech00: команда не найдена
прошло 29 минут
10:36:34
$test -d /etc ; echo$?
l3script: echo0: команда не найдена
10:36:36
$test -d /etc ; echo $?
0
10:36:38
$test -d /etc/fstab ; echo $?
1
10:36:47
$c

10:38:20
$; echo $?
                                      $?
0
10:38:39
$&& echo Pravilno || echo ne\ pravilno ; echo vse\ ravno
                        && echo Pravilno || echo ne\ pravilno ; echo vse\ ravno
10:40:26
$|| echo ne\ pravilno ; echo vse\ ravno

10:40:26
$t || echo ne\ pravilno ; echo vse\ ravno

10:49:07
$vim for1
--- /dev/null	2010-05-14 20:22:43.633692287 +0300
+++ for1	2010-05-19 11:49:18.000000000 +0300
@@ -0,0 +1 @@
+#!/bin/bash
10:49:18
$vim for1
--- /tmp/l3-saved-12402.26035.31569	2010-05-19 11:49:19.000000000 +0300
+++ for1	2010-05-19 11:50:13.000000000 +0300
@@ -1 +1,5 @@
 #!/bin/bash
+for i in Earth Mars Sun
+do
+echo $i
+done
10:50:13
$chmod +x for1

10:50:19
$./for1
Earth
Mars
Sun
10:50:21
$vim for1
--- /tmp/l3-saved-12402.1359.3225	2010-05-19 11:50:25.000000000 +0300
+++ for1	2010-05-19 11:50:30.000000000 +0300
@@ -1,4 +1,5 @@
 #!/bin/bash
+set -x
 for i in Earth Mars Sun
 do
 echo $i
10:50:30
$./for1
+ for i in Earth Mars Sun
+ echo Earth
Earth
+ for i in Earth Mars Sun
+ echo Mars
Mars
+ for i in Earth Mars Sun
+ echo Sun
Sun
10:50:31
$vim for1
--- /tmp/l3-saved-12402.13169.23463	2010-05-19 11:51:01.000000000 +0300
+++ for1	2010-05-19 11:51:10.000000000 +0300
@@ -1,6 +1,6 @@
 #!/bin/bash
 set -x
-for i in Earth Mars Sun
+for i in "Earth Mars Sun"
 do
 echo $i
 done
10:51:10
$./for1
+ for i in '"Earth Mars Sun"'
+ echo Earth Mars Sun
Earth Mars Sun
10:51:11
$cat ./for1
#!/bin/bash
set -x
for i in "Earth Mars Sun"
do
echo $i
done
10:51:22
$vim /etc/passwd
10:51:46
$ 22 user:x:1000:1000::/home/user:/bin/bash
l3script: vipw: команда не найдена
10:51:49
$sudo vipw
 13 www-data:x:33:33:www-data:/var/www:/bin/sh
 14 backup:x:34:34:backup:/var/backups:/bin/sh
 15 list:x:38:38:Mailing List Manager:/var/list:/bin/sh
 16 irc:x:39:39:ircd:/var/run/ircd:/bin/sh
 17 gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
 18 nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
 19 libuuid:x:100:101::/var/lib/libuuid:/bin/sh
 20 messagebus:x:101:103::/var/run/dbus:/bin/false
 21 gdm:x:102:105:Gnome Display Manager:/var/lib/gdm:/bin/false
vipw: /etc/passwd не был изменён
10:52:04
$vim /etc/passwd
10:54:11
$cp for1 for2

10:54:17
$vim for2
--- /tmp/l3-saved-12402.15435.6978	2010-05-19 11:54:19.000000000 +0300
+++ for2	2010-05-19 11:54:42.000000000 +0300
@@ -1,6 +1,6 @@
 #!/bin/bash
 set -x
-for i in "Earth Mars Sun"
+for i in ``
 do
 echo $i
 done
10:54:42
$seq 1 10
1
2
3
4
5
6
7
8
9
10
10:54:48
$vim for2
--- /tmp/l3-saved-12402.5087.19300	2010-05-19 11:54:58.000000000 +0300
+++ for2	2010-05-19 11:56:05.000000000 +0300
@@ -1,6 +1,7 @@
 #!/bin/bash
 set -x
-for i in ``
+for i in `seq 1 100`
 do
-echo $i
+useradd -m user$i
+
 done
10:56:05
$cha
chage   chattr
10:56:05
$sudo chpasswd ^C

10:56:20
$vim for2
10:56:28
$~
chage            charpick_applet  chattr
charmap          charsets
10:56:28
$man chpasswd
10:57:04
$man bash
10:57:10
$vim for2
--- /tmp/l3-saved-12402.11174.9212	2010-05-19 11:58:44.000000000 +0300
+++ for2	2010-05-19 11:59:39.000000000 +0300
@@ -3,5 +3,5 @@
 for i in `seq 1 100`
 do
 useradd -m user$i
-
+echo user$i:password$i | chpasswd
 done
10:59:39
$chmod +x
chmod: пропущен операнд после `+x'
Попробуйте `chmod --help' для получения более подробного описания.
10:59:43
$chmod +x for2

10:59:47
$sudo ./for2
++ seq 1 100
+ for i in '`seq 1 100`'
+ useradd -m user1
+ echo user1:password1
+ chpasswd
+ for i in '`seq 1 100`'
+ useradd -m user2
+ echo user2:password2
+ chpasswd
+ for i in '`seq 1 100`'
...
+ echo user98:password98
+ chpasswd
+ for i in '`seq 1 100`'
+ useradd -m user99
+ echo user99:password99
+ chpasswd
+ for i in '`seq 1 100`'
+ useradd -m user100
+ echo user100:password100
+ chpasswd
11:00:03
$vipw
l3script: vipw: команда не найдена
11:00:07
$vim /etc/passwd
11:00:27
$ 22 user:x:1000:1000::/home/user:/bin/bash
  1
"/etc/shadow" [Доступ запрещён]
11:00:34
$~
 24 user1:$6$/HgPKDOt$4Z.96Ks3eiG665BZcnt5D6mhD5H8FKqjHDVKbodTF6fU19vt13WBZtT5EAA
    8BbAuaixPMlPN9ShjufEmxmZY840:14748:0:99999:7:::T832i/bfP92yZYICkjYNCWNtGa1q33
    kFJ0bMyvTB5nku4kLzMQfvveJ9r0:14748:0:99999:7:::pzZBSk0OLRPmYLflVM8XjJlr7FPELL
    qrd9JXlJshK.wkHJK2pU9ThCbQz.:14748:0:99999:7:::.5Tz4LFDpAA7wffH9S/H7CdQAoedll
    eSQ/.fx9Cj/z4qZOyc7Q/ekeFxX0:14748:0:99999:7:::5HBn9ZwAOhsdH31.KIdd37Ba8pXU88
    5VaAhX6Yw5BLF0lSpS7m.3Ju6cq0:14748:0:99999:7:::tWM/NQx7b7x.s7tilFurg0il2hyJoo
    gpep5BlVje5xfQMo4KcfB5gsGEh.:14748:0:99999:7:::ZMoyhYL2lj9eBv.U2jMZBg.2YoRAII
    syZ7cK9l76ZbiTm6luer1IMEp5t1:14748:0:99999:7:::DTxo.bbzYGlfxAiEHdBWLOK.zRC0YY
@
 32 user9:$6$JYLxTiGc$cCB7Qy7XaCzqf552q1fCQo6s/Yihau5V4aHrbiIN/ApGY1kf1qYB/GIaT55
    GBAW0plwx1e0bsD9fARJLAv1/Tn0:14748:0:99999:7:::
 33 user10:$6$l0QdGfQV$foRXWymU3s58VmoIykCRL35pUBla8zqJ7w93Kwv0THLv/zXPHQPi4iOhJJ
    gsMbOikKw9Xiw72nEgIm0/1oBUK8/:14748:0:99999:7:::
@
 34 user11:$6$pBeQhpw3$TIguL.gUIskC1jA9oOGNh6YL.jB0fanwl6vTr2W33,1          19%
11:01:10
$cat fpr2
cat: fpr2: Нет такого файла или каталога
11:01:14
$cat for2
#!/bin/bash
set -x
for i in `seq 1 100`
do
useradd -m user$i
echo user$i:password$i | chpasswd
done
11:01:39
$scp for2 192.168.16.23:~
for2                                          100%  100     0.1KB/s   00:00
11:09:39
$cat for2
for2          for2-freebsd
11:09:39
$cat for2-freebsd
#!/usr/local/bin/bash
set -x
for i in `jot - 1 100`
do
pw user add user$i -s /usr/local/bin/bash -L russian -m -d /home/user$i
echo password$i | pw usermod user$i -h 0
done
11:09:47
$vim for3
--- /dev/null	2010-05-14 20:22:43.633692287 +0300
+++ for3	2010-05-19 12:10:15.000000000 +0300
@@ -0,0 +1 @@
+#!/bin/bash
11:10:15
$vim for3
--- /tmp/l3-saved-12402.12902.30544	2010-05-19 12:10:15.000000000 +0300
+++ for3	2010-05-19 12:14:27.000000000 +0300
@@ -1 +1,14 @@
 #!/bin/bash
+FILES="/sbin/modinfo
+/sbin/mount.fuse
+/sbin/sergey
+/bin/cat
+/sbin/ifconfig"
+for i in $FILES
+do
+if [ ! -e "$i"  ]
+then echo "File $i not found, sorry ..."
+fi
+ls -lh $i | awk '{print$9" has size: "$5}'
+
+done
11:14:27
$basename /sbin/modinfo
modinfo
11:15:39
$chmod +x ./for3

11:16:19
$./for3
+ FILES='/sbin/modinfo
/sbin/mount.fuse
/sbin/sergey
/bin/cat
/sbin/ifconfig'
+ for i in '$FILES'
+ '[' '!' -e /sbin/modinfo ']'
+ ls -lh /sbin/modinfo
+ awk '{print$9" has size: "$5}'
/sbin/modinfo has size: 23K
...
+ whatis cat
cat (1)              - concatenate files and print on the standard output
+ for i in '$FILES'
+ '[' '!' -e /sbin/ifconfig ']'
+ ls -lh /sbin/ifconfig
+ awk '{print$9" has size: "$5}'
/sbin/ifconfig has size: 61K
++ basename /sbin/ifconfig
+ whatis ifconfig
ifconfig (8)         - configure a network interface
11:16:21
$vim for3
--- /tmp/l3-saved-12402.1235.19499	2010-05-19 12:16:27.000000000 +0300
+++ for3	2010-05-19 12:16:30.000000000 +0300
@@ -1,5 +1,5 @@
 #!/bin/bash
-set -x
+#set -x
 FILES="/sbin/modinfo
 /sbin/mount.fuse
 /sbin/sergey
11:16:30
$./for3
/sbin/modinfo has size: 23K
modinfo (8)          - program to show information about a Linux Kernel module
/sbin/mount.fuse has size: 6,0K
mount.fuse: ничего подходящего не найдено.
File /sbin/sergey not found, sorry ...
ls: невозможно получить доступ к /sbin/sergey: Нет такого файла или каталога
sergey: ничего подходящего не найдено.
/bin/cat has size: 46K
cat (1)              - concatenate files and print on the standard output
/sbin/ifconfig has size: 61K
ifconfig (8)         - configure a network interface
11:16:31
$vim for3
--- /tmp/l3-saved-12402.7778.23934	2010-05-19 12:16:51.000000000 +0300
+++ for3	2010-05-19 12:17:14.000000000 +0300
@@ -9,6 +9,7 @@
 do
 if [ ! -e "$i"  ]
 then echo "File $i not found, sorry ..."
+continue
 fi
 ls -lh $i | awk '{print$9" has size: "$5}'
 whatis `basename $i`
11:17:14
$./for3
/sbin/modinfo has size: 23K
modinfo (8)          - program to show information about a Linux Kernel module
/sbin/mount.fuse has size: 6,0K
mount.fuse: ничего подходящего не найдено.
File /sbin/sergey not found, sorry ...
/bin/cat has size: 46K
cat (1)              - concatenate files and print on the standard output
/sbin/ifconfig has size: 61K
ifconfig (8)         - configure a network interface
11:17:16
$cat ./for3
#!/bin/bash
#set -x
FILES="/sbin/modinfo
/sbin/mount.fuse
/sbin/sergey
/bin/cat
/sbin/ifconfig"
for i in $FILES
do
if [ ! -e "$i"  ]
then echo "File $i not found, sorry ..."
continue
fi
ls -lh $i | awk '{print$9" has size: "$5}'
whatis `basename $i`
done
11:17:29
$vim select1
--- /dev/null	2010-05-14 20:22:43.633692287 +0300
+++ select1	2010-05-19 12:18:19.000000000 +0300
@@ -0,0 +1,2 @@
+#!/bin/bash
+
11:18:19
$vim select1
--- /tmp/l3-saved-12402.6588.2401	2010-05-19 12:18:20.000000000 +0300
+++ select1	2010-05-19 12:20:32.000000000 +0300
@@ -1,2 +1,6 @@
 #!/bin/bash
-
+PS3="Please, select you most lovely operating system: "
+select os in FreeBSD Linux Windows "Mac OSx" Other
+do
+echo "You lovely OS is: $os"
+done
11:20:32
$chmod +x select1

11:20:36
$./select1
1) FreeBSD
2) Linux
3) Windows
4) Mac OSx
5) Other
Please, select you most lovely operating system: 1
You lovely OS is: FreeBSD
Please, select you most lovely operating system: 2
You lovely OS is: Linux
Please, select you most lovely operating system: 3
You lovely OS is: Windows
Please, select you most lovely operating system: 4
You lovely OS is: Mac OSx
Please, select you most lovely operating system: ^C
11:20:52
$vim select1
--- /tmp/l3-saved-12402.27166.27361	2010-05-19 12:20:54.000000000 +0300
+++ select1	2010-05-19 12:21:32.000000000 +0300
@@ -3,4 +3,5 @@
 select os in FreeBSD Linux Windows "Mac OSx" Other
 do
 echo "You lovely OS is: $os"
+if [ "$os" == FreeBSD -o "$os" == Linux 
 done
11:21:32
$man test
11:21:41
$vim select1
--- /tmp/l3-saved-12402.24933.12376	2010-05-19 12:21:42.000000000 +0300
+++ select1	2010-05-19 12:23:59.000000000 +0300
@@ -3,5 +3,11 @@
 select os in FreeBSD Linux Windows "Mac OSx" Other
 do
 echo "You lovely OS is: $os"
-if [ "$os" == FreeBSD -o "$os" == Linux 
+if [ "$os" == FreeBSD -o "$os" == Linux -o "$os" == "Mac OSx" ]
+then 
+break
+fi
+if [ "$os" == Windows ] 
+echo "Please, try again and choose is really wonderfull os!"
+fi
 done
11:23:59
$./select1
./select1: line 12: syntax error near unexpected token `fi'
./select1: line 12: `fi'
11:24:01
$vim select1
11:24:09
$~
./select1: line 12: syntax error near unexpected token `fi'
./select1: line 12: `fi'
11:24:12
$vim select1
--- /tmp/l3-saved-12402.9920.4290	2010-05-19 12:24:14.000000000 +0300
+++ select1	2010-05-19 12:24:24.000000000 +0300
@@ -8,6 +8,7 @@
 break
 fi
 if [ "$os" == Windows ] 
+then
 echo "Please, try again and choose is really wonderfull os!"
 fi
 done
11:24:24
$./select1
1) FreeBSD
2) Linux
3) Windows
4) Mac OSx
5) Other
Please, select you most lovely operating system: 3
You lovely OS is: Windows
Please, try again and choose is really wonderfull os!
Please, select you most lovely operating system: 2
You lovely OS is: Linux
11:24:32
$cat ./select1
#!/bin/bash
PS3="Please, select you most lovely operating system: "
select os in FreeBSD Linux Windows "Mac OSx" Other
do
echo "You lovely OS is: $os"
if [ "$os" == FreeBSD -o "$os" == Linux -o "$os" == "Mac OSx" ]
then
break
fi
if [ "$os" == Windows ]
then
echo "Please, try again and choose is really wonderfull os!"
fi
done
11:25:05
$vim case1
--- /dev/null	2010-05-14 20:22:43.633692287 +0300
+++ case1	2010-05-19 12:26:18.000000000 +0300
@@ -0,0 +1,2 @@
+#!/bin/bash
+

Файлы

  • ./for1
  • ./for3
  • ./select1
  • for2
  • for2-freebsd
  • ./for1
    >
    #!/bin/bash
    set -x
    for i in "Earth Mars Sun"
    do
    echo $i
    done
    
    ./for3
    >
    #!/bin/bash
    #set -x
    FILES="/sbin/modinfo
    /sbin/mount.fuse
    /sbin/sergey
    /bin/cat
    /sbin/ifconfig"
    for i in $FILES
    do
    if [ ! -e "$i"  ]
    then echo "File $i not found, sorry ..."
    continue
    fi
    ls -lh $i | awk '{print$9" has size: "$5}'
    whatis `basename $i`
    done
    
    ./select1
    >
    #!/bin/bash
    PS3="Please, select you most lovely operating system: "
    select os in FreeBSD Linux Windows "Mac OSx" Other
    do
    echo "You lovely OS is: $os"
    if [ "$os" == FreeBSD -o "$os" == Linux -o "$os" == "Mac OSx" ]
    then
    break
    fi
    if [ "$os" == Windows ]
    then
    echo "Please, try again and choose is really wonderfull os!"
    fi
    done
    
    for2
    >
    for2          for2-freebsd
    
    for2-freebsd
    >
    #!/usr/local/bin/bash
    set -x
    for i in `jot - 1 100`
    do
    pw user add user$i -s /usr/local/bin/bash -L russian -m -d /home/user$i
    echo password$i | pw usermod user$i -h 0
    done
    

    Статистика

    Время первой команды журнала09:42:40 2010- 5-19
    Время последней команды журнала11:25:05 2010- 5-19
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, %13.86
    Процент синтаксически неверно набранных команд, % 3.96
    Суммарное время работы с терминалом *, час 1.71
    Количество командных строк в единицу времени, команда/мин 0.99
    Частота использования команд
    vim26|=======================| 23.42%
    echo13|===========| 11.71%
    cat7|======| 6.31%
    chmod6|=====| 5.41%
    ls4|===| 3.60%
    test4|===| 3.60%
    man3|==| 2.70%
    select13|==| 2.70%
    ~3|==| 2.70%
    sudo3|==| 2.70%
    for13|==| 2.70%
    for33|==| 2.70%
    positional_parameters3|==| 2.70%
    export3|==| 2.70%
    bash3|==| 2.70%
    222|=| 1.80%
    unset2|=| 1.80%
    vipw2|=| 1.80%
    for21|| 0.90%
    &1|| 0.90%
    basename1|| 0.90%
    cp1|| 0.90%
    whereis1|| 0.90%
    A=01|| 0.90%
    chpasswd1|| 0.90%
    echo$?1|| 0.90%
    c1|| 0.90%
    ech0$?1|| 0.90%
    scp1|| 0.90%
    t1|| 0.90%
    seq1|| 0.90%
    readonly1|| 0.90%
    grep1|| 0.90%
    cha1|| 0.90%
    A=11|| 0.90%
    pstree1|| 0.90%
    ____
    *) Интервалы неактивности длительностью 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$