/l3/users/16-07-2018/NT-Ladm/debian2.net.nt/root :1 :2 :3 :4 :5 |
|
#cat install | grep 'rm'
perl_modules="Term-VT102 Text-Iconv" normC='\033[0;39m' printf "${whiteC}""$msg""...${normC}\n" printf "${greenC}""Ok\n""${normC}" printf "${redC}""Failed\n""${normC}" For further information see http://xgu.ru/lilalo/ (in Russian). rm -rf ${temp_dir} |
#cat install | grep \<rm\>
![]() |
#cat install | grep '\<rm\>'
rm -rf ${temp_dir} |
#cat install | grep '\${(wget|url_l3bashrc)}'
![]() |
#cat install | egrep '\${(wget|url_l3bashrc)}'
step "Downloading l3bashrc" ${wget} ${url_l3bashrc} step "Downloading l3prompt" ${wget} ${url_l3prompt} step "Downloading l3-agent" '${wget} ${url_l3agent}; ${wget} ${url_l3config_pm}; ${wget} ${url_l3config}' step "Downloading perl modules for l3-agent" '{ for i in ${perl_modules}; do ${wget} ${url_perl_modules}/$i.tar.gz; done; }' |
#vi ip.txt
![]() --- /dev/null 2018-07-16 08:39:18.496000004 +0300 +++ ip.txt 2018-07-17 14:08:13.131919173 +0300 @@ -0,0 +1,7 @@ +10.100.32.12 +192.168.45.2 +255.255.255.255 +0.0.0.0 +123.123.321.321 +e23.23c.s.25 +43.43.43.43/32 |
#cat
![]() .aptitude/ .bash_history .bash_profile .bashrc install install2 ip.txt .l3rc .lesshst .lilalo/ .profile test .vim/ .viminfo .vimrc |
#cat ip.txt
10.100.32.12 192.168.45.2 255.255.255.255 0.0.0.0 123.123.321.321 e23.23c.s.25 43.43.43.43/32 |
#cat ip.txt | egrep '^([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.'
10.100.32.12 192.168.45.2 255.255.255.255 0.0.0.0 123.123.321.321 43.43.43.43/32 |
#tree
. ├── install ├── install2 ├── ip.txt └── test 0 directories, 4 files |
#history
1 ifconfig 2 vim /etc/network/interfaces 3 nano /etc/network/interfaces 4 /etc/init.d/networking restart 5 ifconfig 6 route 7 ping 192.168.13.253 8 shutdown -r now 9 exit 10 ping ya.ru ... 321 cat install | grep '\<rm\>' 322 cat install | grep '\${(wget|url_l3bashrc)}' 323 cat install | egrep '\${(wget|url_l3bashrc)}' 324 vi ip.txt 325 cat ip.txt 326* 327 cat ip.txt | egrep '^(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}' 328 cat ip.txt | egrep '^(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' 329 tree 330 history |
#history | egrep '\['
280 ls g[uz]* 286 ls +([[:digit:]]) 289 ls +([[:digit:]]) 290 rm +([[:digit:]]) 300 echo $[2+4] 301 echo $[2+4*(3)] 302 echo $[2+4*(3+2)] 305 echo $[` ps ax | wc -l`-4] 327 cat ip.txt | egrep '^(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}' 328 cat ip.txt | egrep '^(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' 331 history | egrep '\[' |
#tail -f hitory
![]() tail: невозможно открыть «hitory» для чтения: Нет такого файла или каталога |
#ls -la
итого 84 drwx------ 5 root root 4096 Июл 17 14:08 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. drwx------ 2 root root 4096 Июн 27 2014 .aptitude -rw------- 1 root root 3527 Июл 17 09:51 .bash_history -rw-r--r-- 1 root root 10 Июн 27 2014 .bash_profile -rw-r--r-- 1 root root 653 Июл 17 09:33 .bashrc -rw-r--r-- 2 root root 5268 Окт 13 2014 install -rw-r--r-- 2 root root 5268 Окт 13 2014 install2 -rw-r--r-- 1 root root 94 Июл 17 14:08 ip.txt -rw-r--r-- 1 root root 51 Июл 13 14:52 .l3rc -rw------- 1 root root 41 Июл 16 13:45 .lesshst drwxr-xr-x 2 root root 4096 Июл 17 14:08 .lilalo -rw-r--r-- 1 root root 140 Ноя 19 2007 .profile -rw-r--r-- 1 root root 5268 Июл 16 15:20 test drwxr-xr-x 2 root root 4096 Июн 27 2014 .vim -rw------- 1 root root 5920 Июл 17 14:08 .viminfo -rw-r--r-- 1 root root 64 Июл 16 16:18 .vimrc |
#vi words.txt
![]() --- /dev/null 2018-07-16 08:39:18.496000004 +0300 +++ words.txt 2018-07-17 14:30:08.575911280 +0300 @@ -0,0 +1,9 @@ +test +home +dog +cat +rotor +sun +prot +tort +solos |
#cat words.txt
test home dog cat rotor sun prot tort solos |
#cat words.txt | egrep '(.)(.).\2\1'
rotor solos |
#cat /etc/passwd
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh ... list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/bash sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#cat /etc/passwd | awk -F: '$3~/^100[1-9]/'
ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#cat /etc/passwd | awk -F: '$3~/^100[1-9]+/'
ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#cat /etc/passwd | awk -F: '$3~/^100[1-9]+/{print $1}'
ivan petr |
#cat /etc/passwd | awk -F: '$3~/^100[0-9]+/{print $1}'
user ivan petr |
#sed /etc/pa
![]() pam.conf pam.d/ passwd passwd- |
#sed -n '/bash$/p' /etc/passwd
root:x:0:0:root:/root:/bin/bash user:x:1000:1000:user,,,:/home/user:/bin/bash ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#sed '/bash$/p' /etc/passwd
root:x:0:0:root:/root:/bin/bash root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh ... nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/bash user:x:1000:1000:user,,,:/home/user:/bin/bash sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/bash ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#sed '/bash$/d' /etc/passwd
daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh www-data:x:33:33:www-data:/var/www:/bin/sh backup:x:34:34:backup:/var/backups:/bin/sh list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin |
#sed -n 's/bash$/zsh/' /etc/passwd
|
#sed 's/bash$/zsh/' /etc/passwd
root:x:0:0:root:/root:/bin/zsh daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh ... list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/zsh sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/zsh petr:x:1002:1002::/home/petr:/bin/zsh |
#cat /etc/passwd | tr s z
root:x:0:0:root:/root:/bin/bazh daemon:x:1:1:daemon:/uzr/zbin:/bin/zh bin:x:2:2:bin:/bin:/bin/zh zyz:x:3:3:zyz:/dev:/bin/zh zync:x:4:65534:zync:/bin:/bin/zync gamez:x:5:60:gamez:/uzr/gamez:/bin/zh man:x:6:12:man:/var/cache/man:/bin/zh lp:x:7:7:lp:/var/zpool/lpd:/bin/zh mail:x:8:8:mail:/var/mail:/bin/zh newz:x:9:9:newz:/var/zpool/newz:/bin/zh ... lizt:x:38:38:Mailing Lizt Manager:/var/lizt:/bin/zh irc:x:39:39:ircd:/var/run/ircd:/bin/zh gnatz:x:41:41:Gnatz Bug-Reporting Syztem (admin):/var/lib/gnatz:/bin/zh nobody:x:65534:65534:nobody:/nonexiztent:/bin/zh libuuid:x:100:101::/var/lib/libuuid:/bin/zh Debian-exim:x:101:103::/var/zpool/exim4:/bin/falze uzer:x:1000:1000:uzer,,,:/home/uzer:/bin/bazh zzhd:x:102:65534::/var/run/zzhd:/uzr/zbin/nologin ivan:x:1001:1001::/home/ivan:/bin/bazh petr:x:1002:1002::/home/petr:/bin/bazh |
#cat /etc/passwd | tr ':' ' '
root x 0 0 root /root /bin/bash daemon x 1 1 daemon /usr/sbin /bin/sh bin x 2 2 bin /bin /bin/sh sys x 3 3 sys /dev /bin/sh sync x 4 65534 sync /bin /bin/sync games x 5 60 games /usr/games /bin/sh man x 6 12 man /var/cache/man /bin/sh lp x 7 7 lp /var/spool/lpd /bin/sh mail x 8 8 mail /var/mail /bin/sh news x 9 9 news /var/spool/news /bin/sh ... list x 38 38 Mailing List Manager /var/list /bin/sh irc x 39 39 ircd /var/run/ircd /bin/sh gnats x 41 41 Gnats Bug-Reporting System (admin) /var/lib/gnats /bin/sh nobody x 65534 65534 nobody /nonexistent /bin/sh libuuid x 100 101 /var/lib/libuuid /bin/sh Debian-exim x 101 103 /var/spool/exim4 /bin/false user x 1000 1000 user,,, /home/user /bin/bash sshd x 102 65534 /var/run/sshd /usr/sbin/nologin ivan x 1001 1001 /home/ivan /bin/bash petr x 1002 1002 /home/petr /bin/bash |
#cat /etc/passwd | tr -d ':'
rootx00root/root/bin/bash daemonx11daemon/usr/sbin/bin/sh binx22bin/bin/bin/sh sysx33sys/dev/bin/sh syncx465534sync/bin/bin/sync gamesx560games/usr/games/bin/sh manx612man/var/cache/man/bin/sh lpx77lp/var/spool/lpd/bin/sh mailx88mail/var/mail/bin/sh newsx99news/var/spool/news/bin/sh ... listx3838Mailing List Manager/var/list/bin/sh ircx3939ircd/var/run/ircd/bin/sh gnatsx4141Gnats Bug-Reporting System (admin)/var/lib/gnats/bin/sh nobodyx6553465534nobody/nonexistent/bin/sh libuuidx100101/var/lib/libuuid/bin/sh Debian-eximx101103/var/spool/exim4/bin/false userx10001000user,,,/home/user/bin/bash sshdx10265534/var/run/sshd/usr/sbin/nologin ivanx10011001/home/ivan/bin/bash petrx10021002/home/petr/bin/bash |
#cat /etc/passwd | tr -s
![]() tr: пропущен операнд Попробуйте «tr --help» для получения более подробного описания. |
#cat /etc/passwd | tr -s ':'
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh ... list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101:/var/lib/libuuid:/bin/sh Debian-exim:x:101:103:/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/bash sshd:x:102:65534:/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001:/home/ivan:/bin/bash petr:x:1002:1002:/home/petr:/bin/bash |
#sed 's/:/ /g' /etc/passwd
root x 0 0 root /root /bin/bash daemon x 1 1 daemon /usr/sbin /bin/sh bin x 2 2 bin /bin /bin/sh sys x 3 3 sys /dev /bin/sh sync x 4 65534 sync /bin /bin/sync games x 5 60 games /usr/games /bin/sh man x 6 12 man /var/cache/man /bin/sh lp x 7 7 lp /var/spool/lpd /bin/sh mail x 8 8 mail /var/mail /bin/sh news x 9 9 news /var/spool/news /bin/sh ... list x 38 38 Mailing List Manager /var/list /bin/sh irc x 39 39 ircd /var/run/ircd /bin/sh gnats x 41 41 Gnats Bug-Reporting System (admin) /var/lib/gnats /bin/sh nobody x 65534 65534 nobody /nonexistent /bin/sh libuuid x 100 101 /var/lib/libuuid /bin/sh Debian-exim x 101 103 /var/spool/exim4 /bin/false user x 1000 1000 user,,, /home/user /bin/bash sshd x 102 65534 /var/run/sshd /usr/sbin/nologin ivan x 1001 1001 /home/ivan /bin/bash petr x 1002 1002 /home/petr /bin/bash |
#ls -d /etc/cron
![]() ls: невозможно получить доступ к /etc/cron: Нет такого файла или каталога |
#ls -d /etc/cron*
/etc/cron.d /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/crontab /etc/cron.weekly |
#cd /etc/cron.d
![]() cron.d/ cron.daily/ |
#cd /etc/cron.daily/
|
#ls
apt aptitude bsdmainutils dpkg exim4-base locate logrotate man-db passwd |
#./locate
|
#whereis locate
locate: /usr/bin/locate /usr/bin/locate.findutils /usr/lib/locate /usr/share/man/man1/locate.1.gz |
#find locate
locate |
#vi locate
--- /tmp/l3-saved-6441.11262.20709 2018-07-17 16:19:16.639902785 +0300 +++ locate 2018-07-17 16:20:01.863903311 +0300 @@ -25,7 +25,7 @@ # netpaths which are added NETPATHS="" # run find as this user -LOCALUSER="nobody" +LOCALUSER="root" # cron.daily/find: run at this priority -- higher number means lower priority # (this is relative to the default which cron sets, which is usually +5) NICE=10 |
#./locate
|
#locate install2
/root/install2 |
#apt-get install sudo
![]() Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово НОВЫЕ пакеты, которые будут установлены: sudo обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено. Необходимо скачать 842 kБ архивов. После данной операции, объём занятого дискового пространства возрастёт на 1 882 kB. Ош http://ftp.ua.debian.org/debian/ wheezy/main sudo amd64 1.8.5p2-1+nmu1 404 Not Found Не удалось получить http://ftp.ua.debian.org/debian/pool/main/s/sudo/sudo_1.8.5p2-1+nmu1_amd64.deb 404 Not Found E: Невозможно получить некоторые архивы, вероятно надо запустить apt-get update или попытаться повторить запуск с ключом --fix-missing |
#apt-get update
Получено:1 http://ftp.ua.debian.org wheezy Release.gpg [2 373 B] Получено:2 http://ftp.ua.debian.org wheezy-updates Release.gpg [1 601 B] Получено:3 http://ftp.ua.debian.org wheezy Release [191 kB] Получено:4 http://security.debian.org wheezy/updates Release.gpg [1 601 B] Получено:5 http://security.debian.org wheezy/updates Release [52,3 kB] Получено:6 http://ftp.ua.debian.org wheezy-updates Release [155 kB] Получено:7 http://ftp.ua.debian.org wheezy/main Sources [5 993 kB] Получено:8 http://security.debian.org wheezy/updates/main Sources [354 kB] Получено:9 http://security.debian.org wheezy/updates/contrib Sources [14 B] Получено:10 http://security.debian.org wheezy/updates/non-free Sources [1 372 B] ... Получено:36 http://ftp.ua.debian.org wheezy-updates/main Translation-en [4 879 B] Получено:37 http://ftp.ua.debian.org wheezy-updates/non-free Translation-en [496 B] Получено 17,8 MБ за 22с (805 kБ/c) Чтение списков пакетов… Готово W: Недоступен открытый ключ для следующих ID ключей: 7638D0442B90D010 W: Недоступен открытый ключ для следующих ID ключей: 9D6D8F6BC857C906 W: Недоступен открытый ключ для следующих ID ключей: 7638D0442B90D010 |
#apt-get install sudo
Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово НОВЫЕ пакеты, которые будут установлены: sudo обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 100 пакетов не обновлено. Необходимо скачать 854 kБ архивов. После данной операции, объём занятого дискового пространства возрастёт на 1 883 kB. Получено:1 http://security.debian.org/ wheezy/updates/main sudo amd64 1.8.5p2-1+nmu3+deb7u4 [854 kB] Получено 854 kБ за 0с (2 649 kБ/c) Выбор ранее не выбранного пакета sudo. (Чтение базы данных … на данный момент установлено 30012 файлов и каталогов.) Распаковывается пакет sudo (из файла …/sudo_1.8.5p2-1+nmu3+deb7u4_amd64.deb) … Обрабатываются триггеры для man-db … Настраивается пакет sudo (1.8.5p2-1+nmu3+deb7u4) … |
#cat /etc/sudoers
# # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d |
#who
root pts/0 2018-07-18 09:14 (192.168.15.128) user pts/2 2018-07-18 09:14 (192.168.15.128) ivan pts/4 2018-07-18 09:15 (192.168.15.128) |
#a=1
|
#$a
![]() l3script: 1: команда не найдена |
#echo $a
1 |
#bash
root@debian2:~# echo $a root@debian2:~# exit exit |
#export
declare -x HISTFILESIZE="2000" declare -x HISTSIZE="2000" declare -x HOME="/root" declare -x L3_HOME="/root/.lilalo/" declare -x L3_PARENT_TTY="/dev/pts/0" declare -x L3_SESSION_ID="31611301132371219346-1531894462" declare -x L3_TAMPERED_EDITORS=" vi vim pico nano" declare -x LANG="ru_RU.UTF-8" declare -x LANGUAGE="ru_UA:ru" declare -x LOGNAME="root" declare -x MAIL="/var/mail/root" declare -x OLDPWD declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" |
#export a
|
#echo $a
1 |
#bash
root@debian2:~# echo $a 1 root@debian2:~# exit exit |
#set
BASH=/usr/local/bin/l3script BASHOPTS=checkwinsize:cmdhist:expand_aliases:extquote:force_fignore:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=() BASH_SOURCE=() BASH_VERSINFO=([0]="4" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") BASH_VERSION='4.2.37(1)-release' ... LOGNAME=root MACHTYPE=x86_64-pc-linux-gnu MAIL=/var/mail/root MAILCHECK=60 OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PIPESTATUS=([0]="0") PPID=10775 |
#set | more
|
#env
SHELL=/bin/bash TERM=xterm HISTSIZE=2000 SSH_CLIENT=192.168.15.128 49167 22 L3_PARENT_TTY=/dev/pts/0 L3_TAMPERED_EDITORS= vi vim pico nano SSH_TTY=/dev/pts/0 USER=root HISTFILESIZE=2000 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin MAIL=/var/mail/root L3_SESSION_ID=31611301132371219346-1531894462 a=1 PWD=/root LANG=ru_RU.UTF-8 |
#b=2
|
#env
SHELL=/bin/bash TERM=xterm HISTSIZE=2000 SSH_CLIENT=192.168.15.128 49167 22 L3_PARENT_TTY=/dev/pts/0 L3_TAMPERED_EDITORS= vi vim pico nano SSH_TTY=/dev/pts/0 USER=root HISTFILESIZE=2000 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin MAIL=/var/mail/root L3_SESSION_ID=31611301132371219346-1531894462 a=1 PWD=/root LANG=ru_RU.UTF-8 |
#set | grep ^b=
b=2 |
#set | grep ^a=
a=1 |
#set | grep ^a
a=1 |
#set | grep '^b='
b=2 |
#unset a
|
#unset b
|
#false -version
![]() |
#vi shell.sh
![]() --- /dev/null 2018-07-16 08:39:18.496000004 +0300 +++ shell.sh 2018-07-18 09:44:10.735891023 +0300 @@ -0,0 +1,5 @@ +#!/bin/bash + +users=`awk -F: '$3>1000 && $3!=65524{print $1}' /etc/passwd | \ + tr '\n' ' '` +echo $users |
# 6
|
#./ shell.sh
![]() l3script: ./: Это каталог |
#./shell.sh
nobody ivan petr |
#vi shell.sh
--- /tmp/l3-saved-10776.961.1035 2018-07-18 09:46:44.903897286 +0300 +++ shell.sh 2018-07-18 09:47:18.979898292 +0300 @@ -1,5 +1,5 @@ #!/bin/bash -users=`awk -F: '$3>1000 && $3!=65524{print $1}' /etc/passwd | \ - tr '\n' ' '` +users=`awk -F: '$3>=1000 && $3!=65524{print $1}' /etc/passwd | \ + tr '\n' ' '` echo $users |
#vi shell.sh
|
#~
nobody user ivan petr |
#cat /etc/passwd
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh ... list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/bash sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#vi shell.sh
--- /tmp/l3-saved-10776.3600.23055 2018-07-18 09:48:26.399906118 +0300 +++ shell.sh 2018-07-18 09:48:38.347905312 +0300 @@ -1,5 +1,5 @@ #!/bin/bash -users=`awk -F: '$3>=1000 && $3!=65524{print $1}' /etc/passwd | \ +users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \ tr '\n' ' '` echo $users |
#vi shell.sh
--- /tmp/l3-saved-10776.14596.14035 2018-07-18 09:48:46.463904408 +0300 +++ shell.sh 2018-07-18 09:52:23.551936710 +0300 @@ -3,3 +3,9 @@ users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \ tr '\n' ' '` echo $users + +for user in $users + do + echo "Changing shell for $user" + usermod -s /bin/zsh $user + done |
#./shell.sh
user ivan petr Changing shell for user Changing shell for ivan Changing shell for petr |
#cat /etc/passwd
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh ... list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/zsh sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/zsh petr:x:1002:1002::/home/petr:/bin/zsh |
#vi shell.sh
--- /tmp/l3-saved-10776.29743.22142 2018-07-18 09:53:09.067893966 +0300 +++ shell.sh 2018-07-18 09:55:39.107906168 +0300 @@ -2,10 +2,10 @@ users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \ tr '\n' ' '` -echo $users for user in $users do echo "Changing shell for $user" - usermod -s /bin/zsh $user + usermod -s /bin/$1 $user done + |
#vi shell.sh
--- /tmp/l3-saved-10776.2910.21036 2018-07-18 09:55:58.647875117 +0300 +++ shell.sh 2018-07-18 09:56:23.019914531 +0300 @@ -5,7 +5,7 @@ for user in $users do - echo "Changing shell for $user" + echo "Changing shell to $1 for $user" usermod -s /bin/$1 $user done |
#./shell.sh bash
Changing shell to bash for user Changing shell to bash for ivan Changing shell to bash for petr |
#vi shell.sh
--- /tmp/l3-saved-10776.26653.25706 2018-07-18 09:57:09.423899312 +0300 +++ shell.sh 2018-07-18 09:57:56.615891049 +0300 @@ -1,11 +1,12 @@ #!/bin/bash +shell=$1 users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \ tr '\n' ' '` for user in $users do - echo "Changing shell to $1 for $user" - usermod -s /bin/$1 $user + echo "Changing shell $shell for $user" + usermod -s /bin/$shell $user done |
#./shell.sh zsh
Changing shell zsh for user Changing shell zsh for ivan Changing shell zsh for petr |
#vi shell.sh
--- /tmp/l3-saved-10776.28370.9217 2018-07-18 09:58:20.335897824 +0300 +++ shell.sh 2018-07-18 09:59:05.439881794 +0300 @@ -10,3 +10,4 @@ usermod -s /bin/$shell $user done +awk -F: '$3>=1000 && $3!=65534{print $1 $7}' /etc/passwd |
#./shell.sh bash
Changing shell bash for user Changing shell bash for ivan Changing shell bash for petr user/bin/bash ivan/bin/bash petr/bin/bash |
#vi shell.sh
--- /tmp/l3-saved-10776.18251.6501 2018-07-18 10:00:33.075948830 +0300 +++ shell.sh 2018-07-18 10:04:34.091849466 +0300 @@ -1,6 +1,6 @@ #!/bin/bash -shell=$1 +shell=${1:-bash} users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \ tr '\n' ' '` |
#./shell.sh zsh
Changing shell zsh for user Changing shell zsh for ivan Changing shell zsh for petr user/bin/zsh ivan/bin/zsh petr/bin/zsh |
#./shell.sh
Changing shell bash for user Changing shell bash for ivan Changing shell bash for petr user/bin/bash ivan/bin/bash petr/bin/bash |
#test 5 -eq 5
|
#echo &?
![]() [1] 11629 l3script: ?: команда не найдена [1]+ Done echo |
#test 5 -eq 5
|
#echo $?
0 |
#[ 5 -eq 5 ]
|
#sleep 36
|
#sleep 3600
![]() ^Z [1]+ Stopped sleep 3600 |
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh www-data:x:33:33:www-data:/var/www:/bin/sh backup:x:34:34:backup:/var/backups:/bin/sh list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false user:x:1000:1000:user,,,:/home/user:/bin/zsh sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/zsh petr:x:1002:1002::/home/petr:/bin/zsh
# # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d
10.100.32.12 192.168.45.2 255.255.255.255 0.0.0.0 123.123.321.321 e23.23c.s.25 43.43.43.43/32
test home dog cat rotor sun prot tort solos
Время первой команды журнала | 12:53:55 2018- 7-17 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 09:26:45 2018- 7-18 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 12.87 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 1.98 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 2.97 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.57 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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