/l3/users/clint/nt-ladm-2005-11-13/linux1.linux.nt/user :1 :2 :3 :4 :5 :6 :7 :8 |
|
$for name in ./*
> echo $name bash: syntax error near unexpected token `echo' |
$for name in ./* do echo $name
> done bash: syntax error near unexpected token `done' |
$for name in ./* do echo $name
> ; bash: syntax error near unexpected token `;' |
$for name in ./*; do echo $name; done
./b ./backup ./base ./bin ./body ./c ./Desktop ./errlog ./filename ./files ./names ./null ./sh ./source ./Templates ./test ./text ./touchlist |
$for name in */*; do echo $name; done
backup/x-backup bin/big_mem bin/big_work bin/signal_trap c/big_mem.c c/big_work.c c/signal_trap.c Desktop/Trash files/a files/b ... sh/rn test/dir test/suidprogram test/symlink text/kernel_news text/opensource_news text/rus_news text/text_to_grep text/vi1 text/vi2 |
$for name in *; do echo $name; done
b backup base bin body c Desktop errlog filename files names null sh source Templates test text touchlist |
$cat sh/rn
if [ $# -ne 2 ] then echo "éÓÐÏÌØÚÏ×ÁÎÉÅ: `basename $0` old-pattern new-pattern" # ëÏÍÁÎÄÁ "rn .cpp .C" ÐÅÒÅÉÍÅÎÏ×Ù×ÁÅÔ ×ÓÅ ÆÁÊÌÙ ÓÏÄÅÒÖÁÝÉÅ × ÎÁÚ×ÁÎÉÉ .cpp # × ÒÁÂÏÞÅÍ ËÁÔÁÌÏÇÅ ÎÁ .C exit 1 fi number=0 # úÁÐÏÍÎÉÔØ, ÓËÏÌØËÏ ÆÁÊÌÏ× ÂÙÌÏ ÐÅÒÅÉÍÅÎÏ×ÁÎÏ for name in *$1* #ÒÁÓÓÍÁÔÒÉ×ÁÅÍ ÆÁÊÌÙ × ÔÅËÕÝÅÍ ËÁÔÁÌÏÇÅ do ... then echo "ðÅÒÅÉÍÅÎÏ×ÁÎ $number ÆÁÊÌ." else if [ $rem -gt 1 -a $rem -lt 5 ] then echo "ðÅÒÅÉÍÅÎÏ×ÁÎÏ $number ÆÁÊÌÁ" else echo "ðÅÒÅÉÍÅÎÏ×ÁÎÏ $number ÆÁÊÌÏ×" fi fi |
$ls -l /sh
ls: /sh: No such file or directory |
$ls -l sh
итого 12 -rw-r--r-- 1 user 1000 0 Дек 6 2003 b.C -rw-r--r-- 1 user 1000 0 Дек 6 2003 c.C -rwxr-xr-x 1 user 1000 1372 Дек 6 2003 cpr.sh -rw-r--r-- 1 user 1000 0 Дек 6 2003 d.C -rw-r--r-- 1 user 1000 0 Дек 6 2003 e.C -rwxr-xr-x 1 user 1000 462 Дек 6 2003 par.sh -rwxr-xr-x 1 user 1000 885 Дек 6 2003 rn |
$sh/rn
éÓÐÏÌØÚÏ×ÁÎÉÅ: rn old-pattern new-pattern |
$echo [abc]
b c |
$echo "[abc]"
[abc] |
$echo [abc]
b c |
$echo $a
|
$echo [qwerty].sd
[qwerty].sd |
$[user@linux1:~]$ touch a.jpeg b.jpeg c.jpeg
|
$sh/rn .jpeg .jpg
ðÅÒÅÉÍÅÎÏ×ÁÎÏ 3 ÆÁÊÌÁ |
$vi sh/rn
|
$iconv -l
The following list contain all the coded character sets known. This does not necessarily mean that all combinations of these names can be used for the FROM and TO command line parameters. One coded character set can be listed with several different names (aliases). 437, 500, 500V1, 850, 851, 852, 855, 856, 857, 860, 861, 862, 863, 864, 865, 866, 866NAV, 869, 874, 904, 1026, 1046, 1047, 8859_1, 8859_2, 8859_3, 8859_4, 8859_5, 8859_6, 8859_7, 8859_8, 8859_9, 10646-1:1993, 10646-1:1993/UCS4, ANSI_X3.4-1968, ANSI_X3.4-1986, ANSI_X3.4, ANSI_X3.110-1983, ANSI_X3.110, ARABIC, ARABIC7, ARMSCII-8, ASCII, ASMO-708, ASMO_449, BALTIC, BIG-5, BIG-FIVE, BIG5-HKSCS, BIG5, BIG5HKSCS, BIGFIVE, BS_4730, CA, CN-BIG5, CN-GB, ... SHIFT_JIS, SHIFT_JISX0213, SJIS-OPEN, SJIS-WIN, SJIS, SS636127, STRK1048-2002, ST_SEV_358-88, T.61-8BIT, T.61, T.618BIT, TCVN-5712, TCVN, TCVN5712-1, TCVN5712-1:1993, TIS-620, TIS620-0, TIS620.2529-1, TIS620.2533-0, TIS620, TS-5881, TSCII, UCS-2, UCS-2BE, UCS-2LE, UCS-4, UCS-4BE, UCS-4LE, UCS2, UCS4, UHC, UJIS, UK, UNICODE, UNICODEBIG, UNICODELITTLE, US-ASCII, US, UTF-7, UTF-8, UTF-16, UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, UTF7, UTF8, UTF16, UTF16BE, UTF16LE, UTF32, UTF32BE, UTF32LE, VISCII, WCHAR_T, WIN-SAMI-2, WINBALTRIM, WINDOWS-31J, WINDOWS-936, WINDOWS-1250, WINDOWS-1251, WINDOWS-1252, WINDOWS-1253, WINDOWS-1254, WINDOWS-1255, WINDOWS-1256, WINDOWS-1257, WINDOWS-1258, WINSAMI2, WS2, YU |
$iconv -l | grep KOI
CSKOI8R// KOI-7// KOI-8// KOI8-R// KOI8-T// KOI8-U// KOI8// KOI8R// KOI8U// |
$iconv -f KOI8-R -t UTF8 sh/rn
if [ $# -ne 2 ] then echo "Использование: `basename $0` old-pattern new-pattern" # Команда "rn .cpp .C" переименовывает все файлы содержащие в названии .cpp # в рабочем каталоге на .C exit 1 fi number=0 # Запомнить, сколько файлов было переименовано for name in *$1* #рассматриваем файлы в текущем каталоге do ... then echo "Переименован $number файл." else if [ $rem -gt 1 -a $rem -lt 5 ] then echo "Переименовано $number файла" else echo "Переименовано $number файлов" fi fi |
$iconv -f KOI8-R -t UTF8 sh/rn >myrn
|
$vi myrn
|
$ls
a.jpg backup bin body c.jpg errlog files names sh Templates text b base b.jpg c Desktop filename myrn null source test touchlist |
$ls -l
итого 84 -rw-rw-r-- 1 user user 0 Ноя 15 17:05 a.jpg drwxr-xr-x 2 root root 4096 Ноя 14 12:59 b drwxrwxr-x 3 user user 4096 Ноя 14 13:57 backup -rw-r--r-- 1 user 1000 3845 Дек 6 2003 base drwxr-xr-x 2 user 1000 4096 Дек 6 2003 bin -rw-rw-r-- 1 user user 0 Ноя 15 17:05 b.jpg -rw-r--r-- 1 user 1000 12718 Дек 6 2003 body drwxr-xr-x 2 user 1000 4096 Ноя 14 12:56 c -rw-rw-r-- 1 user user 0 Ноя 15 17:05 c.jpg ... drwxr-xr-x 3 user 1000 4096 Дек 6 2003 files -rw-rw-r-- 1 user user 1215 Ноя 15 17:14 myrn drwxr-xr-x 2 user 1000 4096 Дек 6 2003 names -rw-rw-r-- 1 user user 262 Ноя 15 14:20 null drwxr-xr-x 2 user 1000 4096 Ноя 15 17:07 sh drwxrwxr-x 2 user user 4096 Ноя 14 12:49 source drwxr-xr-x 2 user root 4096 Ноя 12 16:04 Templates drwxr-xr-x 4 user 1000 4096 Дек 6 2003 test drwxr-xr-x 2 user 1000 4096 Дек 6 2003 text -rw-r--r-- 1 user 1000 18 Дек 6 2003 touchlist |
$chmod +x myrn
|
$ls -l
итого 84 -rw-rw-r-- 1 user user 0 Ноя 15 17:05 a.jpg drwxr-xr-x 2 root root 4096 Ноя 14 12:59 b drwxrwxr-x 3 user user 4096 Ноя 14 13:57 backup -rw-r--r-- 1 user 1000 3845 Дек 6 2003 base drwxr-xr-x 2 user 1000 4096 Дек 6 2003 bin -rw-rw-r-- 1 user user 0 Ноя 15 17:05 b.jpg -rw-r--r-- 1 user 1000 12718 Дек 6 2003 body drwxr-xr-x 2 user 1000 4096 Ноя 14 12:56 c -rw-rw-r-- 1 user user 0 Ноя 15 17:05 c.jpg ... drwxr-xr-x 3 user 1000 4096 Дек 6 2003 files -rwxrwxr-x 1 user user 1215 Ноя 15 17:14 myrn drwxr-xr-x 2 user 1000 4096 Дек 6 2003 names -rw-rw-r-- 1 user user 262 Ноя 15 14:20 null drwxr-xr-x 2 user 1000 4096 Ноя 15 17:07 sh drwxrwxr-x 2 user user 4096 Ноя 14 12:49 source drwxr-xr-x 2 user root 4096 Ноя 12 16:04 Templates drwxr-xr-x 4 user 1000 4096 Дек 6 2003 test drwxr-xr-x 2 user 1000 4096 Дек 6 2003 text -rw-r--r-- 1 user 1000 18 Дек 6 2003 touchlist |
$myrn qwerty
bash: myrn: command not found |
$vi myrn
|
$myrn qwerty
bash: myrn: command not found |
$vi myrn
|
$vi myrn
|
$echo *.jpg*
a.jpg b.jpg c.jpg |
$vi myrn
|
$vi myrn
|
$date
Вто Ноя 15 17:26:20 EET 2005 |
$vi myrn
|
$su
Password: |
#which ifconfig
/usr/bin/which: no ifconfig in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/user/bin) |
#[root@linux1:user]# ls -l /etc/
-rw-r--r-- 1 root root 848 Мар 5 2003 ksysguarddrc drwxr-xr-x 2 root root 4096 Ноя 12 05:59 lam -rw-r--r-- 1 root root 6928 Сен 29 2004 ldap.conf -rw-r--r-- 1 root root 105044 Ноя 12 06:00 ld.so.cache -rw-r--r-- 1 root root 57 Ноя 12 05:53 ld.so.conf drwxr-xr-x 2 root root 4096 Ноя 12 05:40 ld.so.conf.d -rw-r--r-- 1 root root 3243 Июл 12 2004 lftp.conf drwxr-xr-x 2 root root 4096 Ноя 12 05:50 libgda drwxr-xr-x 2 root root 4096 Окт 25 2004 libslowo.d -rw-r--r-- 1 root root 144 Окт 25 2004 libslowo.rc ... drwxr-xr-x 2 root root 4096 Ноя 12 05:53 wine drwxr-xr-x 2 root root 4096 Ноя 12 06:00 wordtrans drwxr-xr-x 16 root root 4096 Ноя 12 16:04 X11 drwxr-xr-x 3 root root 4096 Ноя 12 05:41 xdg -rw-r--r-- 1 root root 289 Июл 12 2004 xinetd.conf drwxr-xr-x 2 root root 4096 Ноя 12 05:52 xinetd.d drwxr-xr-x 2 root root 4096 Ноя 12 05:42 xml -rw-r--r-- 1 root root 585 Июл 12 2004 yp.conf -rw-r--r-- 1 root root 255 Ноя 15 2004 yum.conf drwxr-xr-x 2 root root 4096 Ноя 15 2004 yum.repos.d |
#ls -i1 /etc/
83175 ksysguarddrc 96973 lam 80591 ldap.conf 83200 ld.so.cache 80199 ld.so.conf 80200 ld.so.conf.d 82564 lftp.conf 96741 libgda 96942 libslowo.d 83186 libslowo.rc ... 96965 wine 96984 wordtrans 80188 X11 80791 xdg 80692 xinetd.conf 80196 xinetd.d 80992 xml 80571 yp.conf 83123 yum.conf 80295 yum.repos.d |
#ls -l
итого 84 -rw-rw-r-- 1 user user 0 Ноя 15 17:05 a.jpg drwxr-xr-x 2 root root 4096 Ноя 14 12:59 b drwxrwxr-x 3 user user 4096 Ноя 14 13:57 backup -rw-r--r-- 1 user 1000 3845 Дек 6 2003 base drwxr-xr-x 2 user 1000 4096 Дек 6 2003 bin -rw-rw-r-- 1 user user 0 Ноя 15 17:05 b.jpg -rw-r--r-- 1 user 1000 12718 Дек 6 2003 body drwxr-xr-x 2 user 1000 4096 Ноя 14 12:56 c -rw-rw-r-- 1 user user 0 Ноя 15 17:05 c.jpg ... drwxr-xr-x 3 user 1000 4096 Дек 6 2003 files -rwxrwxr-x 1 user user 1210 Ноя 15 17:28 myrn drwxr-xr-x 2 user 1000 4096 Дек 6 2003 names -rw-rw-r-- 1 user user 262 Ноя 15 14:20 null drwxr-xr-x 2 user 1000 4096 Ноя 15 17:07 sh drwxrwxr-x 2 user user 4096 Ноя 14 12:49 source drwxr-xr-x 2 user root 4096 Ноя 12 16:04 Templates drwxr-xr-x 4 user 1000 4096 Дек 6 2003 test drwxr-xr-x 2 user 1000 4096 Дек 6 2003 text -rw-r--r-- 1 user 1000 18 Дек 6 2003 touchlist |
#ls -l | grep ^d
drwxr-xr-x 2 root root 4096 Ноя 14 12:59 b drwxrwxr-x 3 user user 4096 Ноя 14 13:57 backup drwxr-xr-x 2 user 1000 4096 Дек 6 2003 bin drwxr-xr-x 2 user 1000 4096 Ноя 14 12:56 c drwxr-xr-x 3 user user 4096 Ноя 15 09:35 Desktop drwxr-xr-x 3 user 1000 4096 Дек 6 2003 files drwxr-xr-x 2 user 1000 4096 Дек 6 2003 names drwxr-xr-x 2 user 1000 4096 Ноя 15 17:07 sh drwxrwxr-x 2 user user 4096 Ноя 14 12:49 source drwxr-xr-x 2 user root 4096 Ноя 12 16:04 Templates drwxr-xr-x 4 user 1000 4096 Дек 6 2003 test drwxr-xr-x 2 user 1000 4096 Дек 6 2003 text |
#umask
0022 |
#man umask
|
#id
uid=0(root) gid=0(root) группы=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) |
#umask
0022 |
#man umask
|
#man newgrp
|
#man readline\
|
#man rm
|
$whoami
user |
$bash -v
if ! echo ${PATH} | grep -q /usr/kerberos/sbin ; then if [ `id -u` = 0 ] ; then PATH=/usr/kerberos/sbin:${PATH} fi fi id -u # /etc/profile.d/lang.sh - set i18n stuff sourced=0 for langfile in /etc/sysconfig/i18n $HOME/.i18n ; do [ -f $langfile ] && . $langfile && sourced=1 ... echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\007" a="$?"; HIDDEN=$([ "$a" = 0 ] || echo -n ^"$a")$(echo -n _${UID}_)$(echo -n _$$_)$(date\ +"%j$(cat ${LMHOME}/lab 2>/dev/null) %H:%M:%S"); [ "$a" = 0 ] || echo -n ^"$a" echo -n _${UID}_ echo -n _$$_ date +"%j$(cat ${LMHOME}/lab 2>/dev/null) %H:%M:%S" cat ${LMHOME}/lab 2>/dev/null echo $HIDDEN |
$man bash
|
$exit
|
$mount
/dev/hda1 on / type ext3 (rw,errors=remount-ro) proc on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) usbfs on /proc/bus/usb type usbfs (rw) /dev/hda6 on /tmp type ext3 (rw,acl) /dev/hda7 on /var type ext3 (rw) /dev/hda9 on /usr type ext3 (rw) /dev/hda8 on /home type ext3 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) /tmp/img on /mnt type ext2 (rw,loop=/dev/loop0) |
$which mount
/bin/mount |
$ls -l `which mount` mount*
ls: mount*: No such file or directory -rwsr-xr-x 1 root root 82728 Ноя 2 2004 /bin/mount |
$su -
Password: su: неправильный пароль |
$su -
Password: |
#ls -l /bin/mo*
-rwxr-xr-x 1 root root 32720 Ноя 2 2004 /bin/more -rwsr-xr-x 1 root root 82728 Ноя 2 2004 /bin/mount |
#man mount
|
#ls -l /sbin/moun*
-rwxr-xr-x 1 root root 17852 Ноя 12 2004 /sbin/mount.cifs lrwxrwxrwx 1 root root 19 Ноя 12 05:41 /sbin/mount.smb -> ../usr/bin/smbmount lrwxrwxrwx 1 root root 19 Ноя 12 05:41 /sbin/mount.smbfs -> ../usr/bin/smbmount |
#ls -l /sbin/mo*
-rwxr-xr-x 1 root root 59436 Сен 27 2004 /sbin/modinfo -rwxr-xr-x 1 root root 72172 Сен 27 2004 /sbin/modprobe -rwxr-xr-x 1 root root 17852 Ноя 12 2004 /sbin/mount.cifs lrwxrwxrwx 1 root root 19 Ноя 12 05:41 /sbin/mount.smb -> ../usr/bin/smbmount lrwxrwxrwx 1 root root 19 Ноя 12 05:41 /sbin/mount.smbfs -> ../usr/bin/smbmount |
#ls -l /sbin/mount*
-rwxr-xr-x 1 root root 17852 Ноя 12 2004 /sbin/mount.cifs lrwxrwxrwx 1 root root 19 Ноя 12 05:41 /sbin/mount.smb -> ../usr/bin/smbmount lrwxrwxrwx 1 root root 19 Ноя 12 05:41 /sbin/mount.smbfs -> ../usr/bin/smbmount |
#man sync
|
#man snap
|
#cfdisk
|
#cfdisk
|
#fdisk -l
Disk /dev/hda: 40.0 GB, 40027029504 bytes 16 heads, 63 sectors/track, 77557 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 4064 2048224+ 83 Linux /dev/hda2 4065 54389 25363800 5 Extended /dev/hda5 4065 6096 1024096+ 82 Linux swap /dev/hda6 6097 10160 2048224+ 83 Linux /dev/hda7 10161 14224 2048224+ 83 Linux /dev/hda8 14225 24383 5120104+ 83 Linux /dev/hda9 24384 44701 10240240+ 83 Linux /dev/hda10 44702 54389 4882720+ 83 Linux |
#fdisk -lh
fdisk: invalid option -- h Usage: fdisk [-b SSZ] [-u] DISK Change partition table fdisk -l [-b SSZ] [-u] DISK List partition table(s) fdisk -s PARTITION Give partition size(s) in blocks fdisk -v Give fdisk version Here DISK is something like /dev/hdb or /dev/sda and PARTITION is something like /dev/hda7 -u: give Start and End in sector (instead of cylinder) units -b 2048: (for certain MO disks) use 2048-byte sectors |
#fdisk -l
Disk /dev/hda: 40.0 GB, 40027029504 bytes 16 heads, 63 sectors/track, 77557 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 4064 2048224+ 83 Linux /dev/hda2 4065 54389 25363800 5 Extended /dev/hda5 4065 6096 1024096+ 82 Linux swap /dev/hda6 6097 10160 2048224+ 83 Linux /dev/hda7 10161 14224 2048224+ 83 Linux /dev/hda8 14225 24383 5120104+ 83 Linux /dev/hda9 24384 44701 10240240+ 83 Linux /dev/hda10 44702 54389 4882720+ 83 Linux |
$kill 5700
|
$ls -l bin/
итого 24 -rwxr-xr-x 1 user 1000 5489 Дек 6 2003 big_mem -rwxr-xr-x 1 user 1000 4557 Дек 6 2003 big_work -rwxr-xr-x 1 user 1000 5455 Дек 6 2003 signal_trap |
$ps -t tty1
PID TTY TIME CMD 5452 tty1 00:00:00 script 5510 tty1 00:00:00 script |
$ps aux | grep signal_trap
user 5986 95.8 0.0 1248 236 pts/6 R 17:09 0:48 bin/signal_trap user 6008 0.0 0.0 4036 708 pts/7 R 17:10 0:00 grep signal_trap |
$kill -s KILL 5986
|
$[user@linux1:~]$ vim
Terminated ~ ~ ~ ~ ~ ~ VIM - Vi IMproved ~ ~ version 6.2.531 ~ by Bram Moolenaar et al. ... ~ type :q<Enter> to exit ~ type :help<Enter> or <F1> for on-line help ~ type :help version6<Enter> for version info ~ ~ ~ ~ ~ ~ 0,0-1 All |
$[user@linux1:~]$ vim
Terminated ~ ~ ~ ~ ~ ~ VIM - Vi IMproved ~ ~ version 6.2.531 ~ by Bram Moolenaar et al. ... ~ type :q<Enter> to exit ~ type :help<Enter> or <F1> for on-line help ~ type :help version6<Enter> for version info ~ ~ ~ ~ ~ ~ 0,0-1 All |
$ps aux | grep vim
user 6033 0.0 0.0 4936 940 pts/7 S 17:11 0:00 /bin/sh /usr/bin/vim user 6042 0.1 0.2 9280 2676 pts/7 S 17:11 0:00 /usr/bin/vim.orig user 6043 0.0 0.0 4992 944 pts/6 S 17:11 0:00 /bin/sh /usr/bin/vim user 6052 0.2 0.2 8680 2676 pts/6 S 17:11 0:00 /usr/bin/vim.orig user 6148 0.0 0.0 3828 708 pts/8 R 17:12 0:00 grep vim |
$killall vim
|
$ps aux | grep vim
user 6042 0.0 0.2 9280 2676 pts/7 S 17:11 0:00 /usr/bin/vim.orig user 6052 0.0 0.2 8680 2676 pts/6 S 17:11 0:00 /usr/bin/vim.orig user 6207 0.0 0.0 4276 708 pts/8 R 17:13 0:00 grep vim |
$ps aux | grep vim.orig
user 6042 0.0 0.2 9280 2676 pts/7 S 17:11 0:00 /usr/bin/vim.orig user 6052 0.0 0.2 8680 2676 pts/6 S 17:11 0:00 /usr/bin/vim.orig user 6217 0.0 0.0 4220 708 pts/8 R 17:13 0:00 grep vim.orig |
if [ $# -ne 2 ] then echo "éÓÐÏÌØÚÏ×ÁÎÉÅ: `basename $0` old-pattern new-pattern" # ëÏÍÁÎÄÁ "rn .cpp .C" ÐÅÒÅÉÍÅÎÏ×Ù×ÁÅÔ ×ÓÅ ÆÁÊÌÙ ÓÏÄÅÒÖÁÝÉÅ × ÎÁÚ×ÁÎÉÉ .cpp # × ÒÁÂÏÞÅÍ ËÁÔÁÌÏÇÅ ÎÁ .C exit 1 fi number=0 # úÁÐÏÍÎÉÔØ, ÓËÏÌØËÏ ÆÁÊÌÏ× ÂÙÌÏ ÐÅÒÅÉÍÅÎÏ×ÁÎÏ for name in *$1* #ÒÁÓÓÍÁÔÒÉ×ÁÅÍ ÆÁÊÌÙ × ÔÅËÕÝÅÍ ËÁÔÁÌÏÇÅ do if [ -f $name ] # åÓÌÉ ÜÔÏ ÆÁÊÌ then fname=`basename $name` # õÂÒÁÔØ ÐÕÔØ ÉÚ ÎÁÚ×ÁÎÉÑ n=`echo $fname | sed -e "s/$1/$2/"` # úÁÍÅÎÉÔØ × ÎÁÚ×ÁÎÉÉ $1 ÎÁ $2 mv $fname $n # ðÅÒÅÉÍÅÎÏ×ÁÔØ ÆÁÊÌ number=$(($number+1)) fi done rem=`expr $number % 10` if [ $rem -eq 1 ] # ðÏÓÔÁÒÁÅÍÓÑ ÏÔ×ÅÔÉÔØ ÇÒÁÍÍÁÔÉÞÅÓËÉ ÐÒÁ×ÉÌØÎÏ then echo "ðÅÒÅÉÍÅÎÏ×ÁÎ $number ÆÁÊÌ." else if [ $rem -gt 1 -a $rem -lt 5 ] then echo "ðÅÒÅÉÍÅÎÏ×ÁÎÏ $number ÆÁÊÌÁ" else echo "ðÅÒÅÉÍÅÎÏ×ÁÎÏ $number ÆÁÊÌÏ×" fi fi
Время первой команды журнала | 16:44:11 2006-11-15 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 17:13:27 2006-11-16 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 16.83 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 3.96 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 3.09 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.54 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.
Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
$ l s-l bash: l: command not found |
Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
$ test 5 -lt 4 |
Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
$ 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 |
Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
# id uid=0(root) gid=0(root) Gruppen=0(root) |
Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
$ vi ~/.bashrc
|
Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
$ patch ~/.bashrc |
Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.
Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.
Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.
Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора
Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.
Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.
Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:
$ whoami
user
$ #^ Интересно, кто я?в журнале это будет выглядеть так:
$ whoami
user
Интересно, кто я? |
Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:
$ whoami
user
$ cat > /dev/null #^ Интересно, кто я?
Программа whoami выводит имя пользователя, под которым мы зарегистрировались в системе. - Она не может ответить на вопрос о нашем назначении в этом мире.В журнале это будет выглядеть так:
$ whoami user
|
Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=
1 2 3 4Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.
LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008