/l3/users/30-09-2015/NT-Ladm/debian6.net.nt/user |
|
$vi .exrc
--- /dev/null 2015-09-30 10:23:59.339999987 +0300 +++ .exrc 2015-09-30 11:41:58.947339093 +0300 @@ -0,0 +1,7 @@ +syntax on +set wm=10 +set number +set hlsearch +set mouse=a +colorscheme desert + |
$vi
|
$~
cp: не удалось выполнить stat для «no_file_whith_this_name»: Нет такого файла или каталога |
$test 5 -gt 1
|
$echo $?
0 |
$test 5 -lt 1
|
$echo $?
1 |
$test -z "$STRING"
|
$echo $?
0 |
$test -z $STRING
|
$echo $?
0 |
$test "$P" != print
|
$echo $?
0 |
$test -e /tmp/motd
|
$echo $?
1 |
$test -d /usr/local/bin
|
$test -r /etc/shadow
|
$echo $?
1 |
$test -k /tmp
|
$echo $?
0 |
$test -k /etc/passwd
|
$echo $?
1 |
$x=5
|
$y=10
|
$test $x > $y
|
$echo $?
0 |
$test $x < $y
|
$echo $?
0 |
$test "$x" < "$y"
|
$echo $?
0 |
$test "$x" > "$y"
|
$echo $?
0 |
$test -r "$x" > "$y"
|
$echo $?
1 |
$test -r "$x" < "$y"
|
$echo $?
1 |
$test "$x" eg "$y"
l3script: test: eg: ожидается использование бинарного оператора |
$test "$x" -eg "$y"
l3script: test: -eg: ожидается использование бинарного оператора |
$test $y
|
$echo $y
10 |
$echo $x
5 |
$test "$y" -z "x"
l3script: test: -z: ожидается использование бинарного оператора |
$test "$y" -z "x"
l3script: test: -z: ожидается использование бинарного оператора |
$test "$y" != "$x"
|
$echo $?
0 |
$test "$y" !< "$x"
l3script: !: event not found |
$test "$y" < "$x"
l3script: 5: Нет такого файла или каталога |
$test "$y" > "$x"
|
$echo $?
0 |
$x=10
|
$y=5
|
$echo $?
0 |
$test "$y" > "$x"
|
$echo $?
0 |
$echo "ÐÐ°Ñ Ð»ÑбимÑй ÑвеÑ?" Ð; read FAV_COL ; \
> ÐеленÑй ÐÐ°Ñ Ð»ÑбимÑй ÑвеÑ? l3script: $'\320\227\320\265\320\273\320\265\320\275\321\213\320\271': команда не найдена |
$echo "Ваш любиеуtest $EUID -ne 0 -a -r /etc/shadow && \
> 1 |
$test $EUID -ne 0 -a -r /etc/shadow &&
&& \ > TEST Ваша любимая ОС? |
$test $EUID -ne 0 -a -r /etc/shadow &&
-w /etc/passwd || \ > test |
$bash test.sh
Ваш любимый цвет? зеленый |
$bash test.sh
Ваш любимый цвет? еуtest |
$echo "ÐаÑа лÑ$FAV_COL
ÐеленÑй |
$vi test.sh
--- /tmp/l3-saved-2543.30879.18274 2015-09-30 12:19:50.723331006 +0300 +++ test.sh 2015-09-30 12:23:16.823347654 +0300 @@ -1,2 +1,3 @@ #!/bin/bash -echo "Ваш любимый цвет?" ; read FAV_COL ; \ +test $EUID -ne 0 -a -r /etc/shadow && \ +echo 'Предуприждение: Файл /etc/shadow доступен для чтения' |
$bash test.sh
|
$vi test.sh
--- /tmp/l3-saved-2543.1803.29352 2015-09-30 12:23:26.835329416 +0300 +++ test.sh 2015-09-30 12:25:48.107326848 +0300 @@ -1,3 +1,7 @@ #!/bin/bash -test $EUID -ne 0 -a -r /etc/shadow && \ -echo 'Предуприждение: Файл /etc/shadow доступен для чтения' +$A=0 +while [ $A -lt 10 ] +do +A=$((A+1)) +echo $A +done |
$bash test.sh
test.sh: line 2: =0: команда не найдена test.sh: line 3: [: -lt: ожидается использование унарного оператора |
$vi test.sh
--- /tmp/l3-saved-2543.5528.21073 2015-09-30 12:26:05.423357176 +0300 +++ test.sh 2015-09-30 12:27:09.839334294 +0300 @@ -1,6 +1,6 @@ #!/bin/bash -$A=0 -while [ $A -lt 10 ] +$ A=0 +$ while [ $A -lt 10 ] do A=$((A+1)) echo $A |
$bash test.sh
test.sh: line 2: $: команда не найдена test.sh: line 3: $: команда не найдена test.sh: line 4: syntax error near unexpected token `do' test.sh: line 4: `do' |
$vi test.sh
--- /tmp/l3-saved-2543.26386.27084 2015-09-30 12:27:20.455343168 +0300 +++ test.sh 2015-09-30 12:28:18.391343052 +0300 @@ -1,6 +1,6 @@ #!/bin/bash -$ A=0 -$ while [ $A -lt 10 ] +$A=0 +$while [ $A -lt 10 ] do A=$((A+1)) echo $A |
$bash test.sh
test.sh: line 2: =0: команда не найдена test.sh: line 3: [: -lt: ожидается использование унарного оператора test.sh: line 4: syntax error near unexpected token `do' test.sh: line 4: `do' |
$vi test.sh
--- /tmp/l3-saved-2543.25076.5415 2015-09-30 12:28:41.095334353 +0300 +++ test.sh 2015-09-30 12:30:36.043335238 +0300 @@ -1,7 +1,5 @@ #!/bin/bash -$A=0 -$while [ $A -lt 10 ] +$ for file in /etc/* do -A=$((A+1)) -echo $A +[ -r $file ] || echo $file done |
$bash test.sh
test.sh: line 2: $: команда не найдена test.sh: line 3: syntax error near unexpected token `do' test.sh: line 3: `do' |
$vi test.sh
--- /tmp/l3-saved-2543.21000.9468 2015-09-30 12:30:44.163332795 +0300 +++ test.sh 2015-09-30 12:31:02.307332900 +0300 @@ -1,5 +1,5 @@ #!/bin/bash -$ for file in /etc/* +$for file in /etc/* do [ -r $file ] || echo $file done |
$bash test.sh
test.sh: line 2: file: команда не найдена test.sh: line 3: syntax error near unexpected token `do' test.sh: line 3: `do' |
$vi test.sh
--- /tmp/l3-saved-2543.10180.15457 2015-09-30 12:31:24.223343609 +0300 +++ test.sh 2015-09-30 12:31:42.335371336 +0300 @@ -1,5 +1,5 @@ #!/bin/bash -$for file in /etc/* +for file in /etc/* do [ -r $file ] || echo $file done |
$bash test.sh
/etc/group- /etc/gshadow /etc/gshadow- /etc/passwd- /etc/shadow /etc/shadow- |
$vi test.sh
--- /tmp/l3-saved-2543.14477.28353 2015-09-30 12:31:54.719344166 +0300 +++ test.sh 2015-09-30 12:35:11.187319335 +0300 @@ -1,5 +1,7 @@ #!/bin/bash -for file in /etc/* +echo 'Щ какой команде Вы хотели бы получить информацию?' ; \ +select command in man touch mount make exit clear do -[ -r $file ] || echo $file +whatis $command +break done |
$bash test.sh
Щ какой команде Вы хотели бы получить информацию? 1) man 2) touch 3) mount 4) make 5) exit 6) clear #? 2 touch (1) - change file timestamps |
$bash test.sh
Щ какой команде Вы хотели бы получить информацию? 1) man 2) touch 3) mount 4) make 5) exit 6) clear #? 5 exit (3) - cause normal process termination exit (2) - terminate the calling process |
$bash test.sh
Щ какой команде Вы хотели бы получить информацию? 1) man 2) touch 3) mount 4) make 5) exit 6) clear #? 5 exit (3) - cause normal process termination exit (2) - terminate the calling process |
$vi test.sh
--- /tmp/l3-saved-2543.18658.10499 2015-09-30 12:36:00.551341449 +0300 +++ test.sh 2015-09-30 12:43:17.615345687 +0300 @@ -1,7 +1,15 @@ #!/bin/bash -echo 'Щ какой команде Вы хотели бы получить информацию?' ; \ -select command in man touch mount make exit clear -do -whatis $command -break -done +echo "При помощи какой команды можно получить полную +справочную информацию о программе?" +read answer +case $answer in +"man" | "info" ) + echo 'Вы правы. Так оно и есть.' +;; +"whatis" | "apropos" ) + echo 'Не совсем так. При помощи этой компанды можно +получить только краткую информацию.' +;; +* ) echo 'Вы ошибаетесь' +;; +esac |
$bash test.sh
При помощи какой команды можно получить полную справочную информацию о программе? help Вы ошибаетесь |
$bash test.sh
При помощи какой команды можно получить полную справочную информацию о программе? --help Вы ошибаетесь |
$bash test.sh
При помощи какой команды можно получить полную справочную информацию о программе? info Вы правы. Так оно и есть. |
$vi test.sh
|
$~
При помощи какой команды можно получить полную справочную информацию о программе? whatis Не совсем так. При помощи этой компанды можно получить только краткую информацию. |
$vi test.sh
--- /tmp/l3-saved-2543.16293.27240 2015-09-30 12:44:30.895397854 +0300 +++ test.sh 2015-09-30 12:50:49.635338955 +0300 @@ -1,15 +1,15 @@ #!/bin/bash -echo "При помощи какой команды можно получить полную -справочную информацию о программе?" -read answer -case $answer in -"man" | "info" ) - echo 'Вы правы. Так оно и есть.' -;; -"whatis" | "apropos" ) - echo 'Не совсем так. При помощи этой компанды можно -получить только краткую информацию.' -;; -* ) echo 'Вы ошибаетесь' -;; -esac +echo 'Полный путь к программе, которую нужно выполнить :' +read PROGRAM \; +if [ -x "$PROGRAM" ] +then +"$PROGRAM" +else +echo -n "Cant run $PROGRAM. " +if [ -e "$PROGRAM" ] +then +echo This file is not executable +else +echo No such file +fi +fi |
$bash test.sh
Полный путь к программе, которую нужно выполнить : bash test.sh: line 3: read: `;': неправильный идентификатор Cant run bash. No such file |
$bash test.sh
Полный путь к программе, которую нужно выполнить : test test.sh: line 3: read: `;': неправильный идентификатор Cant run test. No such file |
$vi test.sh
--- /tmp/l3-saved-2543.30993.26473 2015-09-30 12:51:18.799346002 +0300 +++ test.sh 2015-09-30 12:56:32.591350675 +0300 @@ -1,15 +1,2 @@ #!/bin/bash -echo 'Полный путь к программе, которую нужно выполнить :' -read PROGRAM \; -if [ -x "$PROGRAM" ] -then -"$PROGRAM" -else -echo -n "Cant run $PROGRAM. " -if [ -e "$PROGRAM" ] -then -echo This file is not executable -else -echo No such file -fi -fi + |
Время первой команды журнала | 09:29:01 2015- 9-30 | |||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 11:51:16 2015- 9-30 | |||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 90 | |||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 22.22 | |||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | |||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 1.15 | |||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 1.30 | |||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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