/l3/users/oz/nt-bsdadm/fbsd1.net.nt/user :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 :15 :16 :17 :18 :19 :20 :21 :22 :23 :24 :25 |
|
#make install clean
===> Vulnerability check disabled, database not found => tree-1.5.1.1.tgz doesn't seem to exist in /usr/ports/distfiles/. => Attempting to fetch from ftp://mama.indstate.edu/linux/tree/. tree-1.5.1.1.tgz 100% of 30 kB 62 kBps ===> Extracting for tree-1.5.1.1 => MD5 Checksum OK for tree-1.5.1.1.tgz. => SHA256 Checksum OK for tree-1.5.1.1.tgz. ===> Patching for tree-1.5.1.1 ===> Applying FreeBSD patches for tree-1.5.1.1 ===> Configuring for tree-1.5.1.1 ... ===> Installing for tree-1.5.1.1 ===> Generating temporary packing list ===> Checking if sysutils/tree already installed /bin/mkdir -p /usr/local/bin /bin/mkdir -p /usr/local/man/man1 install -s -o root -g wheel -m 555 tree /usr/local/bin install -o root -g wheel -m 444 man/tree.1 /usr/local/man/man1 ===> Compressing manual pages for tree-1.5.1.1 ===> Registering installation for tree-1.5.1.1 ===> Cleaning for tree-1.5.1.1 |
#exit
exit |
$tree
. | | | |
$tree
. | | | |
$tree a
a | | | | |
$ls
123 backup fluxbox.core 456 create-10m-image image.bz2 DIR dir1 image2.bz2 Documents of user user dir2 image3 a file source |
$ls a/
b g m |
$tree a | less
|
$ls
123 backup fluxbox.core 456 create-10m-image image.bz2 DIR dir1 image2.bz2 Documents of user user dir2 image3 a file source |
$cd tree
bash: cd: tree: No such file or directory |
$cd a
|
$tree . | less
|
$tree
. | | | | |
$cd ..
|
$mkdir b
|
$cd b
|
$mkdir x y z
|
$cd ..
|
$tree b
b | | 3 directories, 0 files |
$mkdir -p a/{b,g/{c/{d,e,f},h,i/{j,k,l}},m}
|
$for i in user{1,2,3,4,5}
> do > sudo pw useradd -m $i > done pw: user name or id required pw: user name or id required pw: user name or id required pw: user name or id required pw: user name or id required |
$for i in user{1,2,3,4,5}; do sudo pw useradd $i -mone
|
$sudo pw usershow -a | grep ^user:
user:*:1001:0::0:0:User:/home/user:/usr/local/bin/bash |
$sudo pw usershow -a | grep ^user
user:*:1001:0::0:0:User:/home/user:/usr/local/bin/bash user1:*:1002:1002::0:0:User &:/home/user1:/bin/sh user2:*:1003:1003::0:0:User &:/home/user2:/bin/sh user3:*:1004:1004::0:0:User &:/home/user3:/bin/sh user4:*:1005:1005::0:0:User &:/home/user4:/bin/sh user5:*:1006:1006::0:0:User &:/home/user5:/bin/sh |
$sudo pw usershow -a | grep ^user
|
$sudo pw usershow -a | grep ^user
user:*:1001:0::0:0:User:/home/user:/usr/local/bin/bash user1:*:1002:1002::0:0:User &:/home/user1:/usr/local/bin/bash user2:*:1003:1003::0:0:User &:/home/user2:/usr/local/bin/bash user3:*:1004:1004::0:0:User &:/home/user3:/usr/local/bin/bash user4:*:1005:1005::0:0:User &:/home/user4:/usr/local/bin/bash user5:*:1006:1006::0:0:User &:/home/user5:/usr/local/bin/bash |
$for i in hr{1,2,3,4,5} am{1,2,3}; do sudo pw usermod $i -s /usr
|
$for i in {hr,am,it}{1,2,3,4,5} ; do sudo pw usermod $i -s /usr/
ocal/bin/bash; done |
$jot 500 1
352 353 354 355 356 357 358 359 360 361 ... 491 492 493 494 495 496 497 498 499 500 |
$jot 10 1
1 2 3 4 5 6 7 8 9 10 ... 91 92 93 94 95 96 97 98 99 100 |
$jot 100 1
|
$for i in `jot 100 1`; do sudo useradd newuser$i ; done
sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found ... sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found sudo: useradd: command not found |
$for i in `jot 100 1`; do sudo pw radd newuser$i ; done
|
$ps usershow -a | grep newuser
ps: illegal option -- s usage: ps [-aCcefHhjlmrSTuvwXxZ] [-O fmt | -o fmt] [-G gid[,gid...]] [-M core] [-N system] [-p pid[,pid...]] [-t tty[,tty...]] [-U user[,user...]] ps [-L] |
$sudo rshow -a | grep newuser
newuser1:*:1007:1007::0:0:User &:/home/newuser1:/bin/sh newuser2:*:1008:1008::0:0:User &:/home/newuser2:/bin/sh newuser3:*:1009:1009::0:0:User &:/home/newuser3:/bin/sh newuser4:*:1010:1010::0:0:User &:/home/newuser4:/bin/sh newuser5:*:1011:1011::0:0:User &:/home/newuser5:/bin/sh newuser6:*:1012:1012::0:0:User &:/home/newuser6:/bin/sh newuser7:*:1013:1013::0:0:User &:/home/newuser7:/bin/sh newuser8:*:1014:1014::0:0:User &:/home/newuser8:/bin/sh newuser9:*:1015:1015::0:0:User &:/home/newuser9:/bin/sh newuser10:*:1016:1016::0:0:User &:/home/newuser10:/bin/sh ... newuser91:*:1097:1097::0:0:User &:/home/newuser91:/bin/sh newuser92:*:1098:1098::0:0:User &:/home/newuser92:/bin/sh newuser93:*:1099:1099::0:0:User &:/home/newuser93:/bin/sh newuser94:*:1100:1100::0:0:User &:/home/newuser94:/bin/sh newuser95:*:1101:1101::0:0:User &:/home/newuser95:/bin/sh newuser96:*:1102:1102::0:0:User &:/home/newuser96:/bin/sh newuser97:*:1103:1103::0:0:User &:/home/newuser97:/bin/sh newuser98:*:1104:1104::0:0:User &:/home/newuser98:/bin/sh newuser99:*:1105:1105::0:0:User &:/home/newuser99:/bin/sh newuser100:*:1106:1106::0:0:User &:/home/newuser100:/bin/sh |
$for i in `jot 100 1`; do sudo pw useradelser$i ; done
pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' ... pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' pw: unknown keyword `useradel' ^Z [1]+ Stopped sudo pw useradel newuser$i |
$kill %1
bash: kill: (4714) - No such process [1]+ Exit 64 sudo pw useradel newuser$i |
$for i in `jot 100 1`; do sudo pw userdel newuser$i ; done
|
$sleep 10000000
^Z [1]+ Stopped sleep 10000000 |
$jobs
[1]+ Stopped sleep 10000000 |
$sleep 900000
^Z [2]+ Stopped sleep 9000000 |
$jobs
[1]- Stopped sleep 10000000 [2]+ Stopped sleep 9000000 |
$bg
[2]+ sleep 9000000 & |
$bg %1
[1]+ sleep 10000000 & |
$jobs
[1]- Running sleep 10000000 & [2]+ Running sleep 9000000 & |
$kill %1
[1]- Terminated: 15 sleep 10000000 |
$kill %2
[2]+ Terminated: 15 sleep 9000000 |
$kill
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] |
$/bin/kill
usage: kill [-s signal_name] pid ... kill -l [exit_status] kill -signal_name pid ... kill -signal_number pid ... |
$sleep 9000000 &
[1] 5117 |
$/bin/kill %1
kill: illegal process id: %1 |
$kill %1
[1]+ Terminated: 15 sleep 9000000 |
$ping ya.ru
PING ya.ru (213.180.204.8): 56 data bytes 64 bytes from 213.180.204.8: icmp_seq=0 ttl=55 time=64.735 ms 64 bytes from 213.180.204.8: icmp_seq=1 ttl=55 time=53.222 ms 64 bytes from 213.180.204.8: icmp_seq=2 ttl=55 time=78.664 ms 64 bytes from 213.180.204.8: icmp_seq=3 ttl=55 time=45.529 ms 64 bytes from 213.180.204.8: icmp_seq=4 ttl=55 time=68.287 ms 64 bytes from 213.180.204.8: icmp_seq=5 ttl=55 time=17.416 ms ^C --- ya.ru ping statistics --- 6 packets transmitted, 6 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 17.416/54.642/78.664/19.731 ms |
$date
Tue Dec 25 09:43:32 EET 2007 |
$sudo ntpdate ntp.psn.ru
Password: Sorry, try again. Password: 25 Dec 15:16:30 ntpdate[5209]: step time server 194.149.67.130 offset 19967.453612 sec |
$date
Tue Dec 25 15:16:39 EET 2007 |
$sudo ntpdate ntp.psn.ru
Password: 25 Dec 15:18:08 ntpdate[5221]: step time server 194.149.67.130 offset 65.636761 sec |
$sudo ntpdate ntp.psn.ru
25 Dec 15:18:30 ntpdate[5227]: step time server 194.149.67.130 offset 14.091258 sec |
$sudo ntpdate ntp.psn.ru
25 Dec 15:18:43 ntpdate[5233]: step time server 194.149.67.130 offset 9.170003 sec |
$# http://xgu.ru/l3/users/oz/
|
$echo $[234+23842*11221]
267531316 |
$i=0
|
$while [ $i -lt 10 ]
> do > echo $i > i=$[i+1] > done 0 1 2 3 4 5 6 7 8 9 |
$while [ $i -lt 10 ]; do echo $i; i=$i+1; done
|
$i=0
|
$while [ $i -lt 0+1+1+1+1ho $i; i=$i+1; done
bash: [: 0+1+1+1+1: integer expression expected |
$while [ $i -ne1+1+1+1 ]; do echo $i; i=$i+1; done
bash: [: 0+1+1+1+1: integer expression expected |
$while [ '!' 1+1+1+1 ]; do echo $i; i=$i+1; done
0 0+1 0+1+1 0+1+1+1 |
$which [
/bin/[ |
$echo 23242432432424324*234204230-492-04920-49230-4 | bc
5443475991162965835635874 |
$echo $[242432432424324*234204230-492-04920-49230-4]
bash: 23242432432424324*234204230-492-04920: value too great for base (error token is "04920") |
$echo 2^10 | bc
1024 |
$echo 2^100| bc
1267650600228229401496703205376 |
$echo 2^1000| bc
10715086071862673209484250490600018105614048117055336074437503883703\ 51051124936122493198378815695858127594672917553146825187145285692314\ 04359845775746985748039345677748242309854210746050623711418779541821\ 53046474983581941267398767559165543946077062914571196477686542167660\ 429831652624386837205668069376 |
$echo 2^10000| bc
19950631168807583848837421626835850838234968318861924548520089498529\ 43883022194663191996168403619459789933112942320912427155649134941378\ 11175937859320963239578557300467937945267652465512660598955205500869\ 18193311542508608460618104685509074866089624888090489894838009253941\ 63325785062156830947390255691238806522509664387444104675987162698545\ 32228685381616943157756296407628368807607322285350916414761839563814\ 58969463899410840960536267821064621427333394036525565649530603142680\ 23496940033593431665145929777327966577560617258203140799419817960737\ 82456837622800373028854872519008344645814546505579296014148339216157\ 34588139257095379769119277800826957735674444123062018757836325502728\ ... 83935917564187338505109702716139154395909915981546544173363116569360\ 31122249937969999226781732358023111862644575299135758175008199839236\ 28461524988108896023224436217377161808635701546848405862232979285387\ 56234865564405369626220189635710288123615675125433383032700290976686\ 50568557157505516727518899194129711337690149916181315171544007728650\ 57318955745092033018530484711381831540732405331903846208403642176370\ 39115506397890007428536721962809034779745333204683687958685802379522\ 18629120080742819551317948157624448298518461509704888027274721574688\ 13159475040973211508049819045580341682694978714131606321068639151168\ 1774304792596709376 |
$echo 2^256bc
11579208923731619542357098500868790785326998466564056403945758400791\ 3129639936 |
$echo 2^128bc
340282366920938463463374607431768211456 |
$echo 2^32 bc
4294967296 |
$echo ~
/home/user |
$echo ~root
/root |
$echo ~-
/home/user/b |
$cd /
|
$cd /etc
|
$cd ~-
|
$cd -
/etc |
$cd -
/ |
$cd -
/etc |
$cd -
/ |
$cd -
/etc |
$cd -
/ |
$a do etogo byli v ~-
|
$echo etogo byli v ~-
a do etogo byli v /etc |
$echo ">>>>>$ssdgdsgf<<<<<<"
>>>>><<<<<< |
$A=10
|
$echo ">>>>>$A<<<<<"
>>>>>10<<<<<< |
$cat
4765 4765 6786787688 6786787688 ^[[17~769879779\ |
4765 4765 6786787688 6786787688 ^[[17~769879779\
Время первой команды журнала | 09:10:21 2007-12-25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 15:23:46 2007-12-25 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 96 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 15.62 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 0.67 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 2.37 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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