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

Содержание

Журнал

Понедельник (08/07/06)

/dev/pts/1
14:07:44
$ls
34    c        hardlink.file  projectX      test
base  Desktop  names          sh            text
bin   file     nohup.out      symlink_file  touchlist
body  files    proj           Templates     very_long_file_name
14:08:21
$cd Desctop
bash: cd: Desctop: No such file or directory
14:08:26
$cd Desktop/
bash: cd: Desktop/top: No such file or directory
14:08:31
$cd Desktop

14:08:35
$ls
Trash
14:08:39
$cd~
bash: cd~: command not found
14:09:41
$cd ~

14:09:48
$pwd
/home/user
14:09:53
$cd ..

14:10:04
$pwd
/home
14:10:09
$ls
lost+found  user
14:10:56
$cd

14:11:07
$pwd
/home/user
14:11:10
$ls
34    body     file           names      projectX      Templates  touchlist
base  c        files          nohup.out  sh            test       very_long_file_name
bin   Desktop  hardlink.file  proj       symlink_file  text
14:11:15
$ls -lF
итого 72
-rw-rw-r--  1 user user     0 Авг  7 11:27 34
-rw-r--r--  1 user user  3845 Дек  6  2003 base
drwxr-xr-x  2 user user  4096 Дек  6  2003 bin/
-rw-r--r--  1 user user 12718 Дек  6  2003 body
drwxr-xr-x  2 user user  4096 Дек  6  2003 c/
drwxr-xr-x  3 user user  4096 Авг  7 12:55 Desktop/
-rw-rw-r--  2 user user     0 Авг  7 11:31 file
drwxr-xr-x  3 user user  4096 Дек  6  2003 files/
-rw-rw-r--  2 user user     0 Авг  7 11:31 hardlink.file
drwxr-xr-x  2 user user  4096 Дек  6  2003 names/
-rw-------  1 user user   661 Авг  7 10:28 nohup.out
drwxr-xr-x  3 user user  4096 Дек  6  2003 proj/
drwxr-xr-x  2 user user  4096 Дек  6  2003 projectX/
drwxr-xr-x  2 user user  4096 Дек  6  2003 sh/
lrwxrwxrwx  1 user user     4 Авг  7 11:33 symlink_file -> file
drwxr-xr-x  2 user user  4096 Авг  4 11:50 Templates/
drwxr-xr-x  4 user user  4096 Дек  6  2003 test/
drwxr-xr-x  2 user user  4096 Дек  6  2003 text/
-rw-r--r--  1 user user    18 Дек  6  2003 touchlist
-rw-r--r--  1 user user     0 Дек  6  2003 very_long_file_name
14:11:44
$ls -alF
итого 276
drwx------  33 user user  4096 Авг  7 14:07 ./
drwxr-xr-x   4 root root  4096 Авг  4 11:49 ../
-rw-rw-r--   1 user user     0 Авг  7 11:27 34
drwx------   2 user user  4096 Авг  7 12:36 .AbiSuite/
-rw-r--r--   1 user user  3845 Дек  6  2003 base
-rw-------   1 user user   425 Авг  7 12:52 .bash_history
-rw-r--r--   1 user user    24 Дек  6  2003 .bash_logout
-rw-r--r--   1 user root   255 Авг  4 18:53 .bash_profile
-rw-r--r--   1 user user   167 Авг  4 18:53 .bashrc
...
lrwxrwxrwx   1 user user     4 Авг  7 11:33 symlink_file -> file
drwxr-xr-x   2 user user  4096 Авг  4 11:50 Templates/
drwxr-xr-x   4 user user  4096 Дек  6  2003 test/
drwxr-xr-x   2 user user  4096 Дек  6  2003 text/
-rw-r--r--   1 user user    18 Дек  6  2003 touchlist
drwx------   2 user user  4096 Авг  7 12:55 .Trash/
-rw-r--r--   1 user user     0 Дек  6  2003 very_long_file_name
-rw-r--r--   1 user user    16 Дек  6  2003 .vimrc
-rw-------   1 user user   126 Авг  7 09:27 .Xauthority
drwxr-xr-x   2 user user  4096 Авг  4 11:49 .xemacs/
14:12:07
$cd usr/share/doc
bash: cd: usr/share/doc: No such file or directory
14:12:50
$cd /usr/share/d
dbus-1/               dejagnu/              desktop-menu-patches/ doc/
ddd-3.3.8/            desktop-directories/  dict/                 dosemu/
14:12:50
$cd /usr/share/d
dbus-1/               dejagnu/              desktop-menu-patches/ doc/
ddd-3.3.8/            desktop-directories/  dict/                 dosemu/
14:12:50
$cd /usr/share/doc/

14:13:21
$ls
gdm-2.6.0.5                      pwlib-1.6.5
gedit-2.8.1                      pygtk2-2.4.0
gettext                          pyorbit-2.0.1
gettext-0.14.1                   pyparted-1.6.6
gftp-2.0.17                      PyQt-3.11
ggv-2.8.0                        PyQt-devel-3.11
ghostscript-7.07                 python-2.3.3
gimp-2.0.5                       pyxf86config-0.3.18
gimp-print-4.2.6                 PyXML-0.8.3
glade-0.6.4                      qt-3.3.3
...
libgal2-2.2.3                    xsane-0.96
libgcj34-devel-3.4.0             xscreensaver-4.18
libgcj-devel-3.3.3               xsri-2.1.0
libgda-1.0.4                     xvidcore-1.0.2
libghttp-1.0.9                   ypbind-1.17.2
libglade-0.17                    yp-tools-2.8
libglade2-2.4.0                  yum-2.1.11
libglade2-devel-2.4.0            zip-2.3
libglade-devel-0.17              zlib-1.2.1.1
libgnome-2.8.0                   zlib-devel-1.2.1.1
14:13:26
$cd bash-
bash: cd: bash-: No such file or directory
14:13:43
$cd bash-
bash-3.0/                 bash-completion-20050721/
14:13:43
$cd bash-
bash-3.0/                 bash-completion-20050721/
14:13:43
$cd bash-
bash-3.0/                 bash-completion-20050721/
14:13:43
$cd bash-
bash-3.0/                 bash-completion-20050721/
14:13:43
$cd bash-3.0

14:13:52
$ls
article.ms   bashbug.0   bash.ps       builtins.ps  FAQ        misc   rbash.0    scripts.noah
article.ps   bashbug.ps  bashref.html  CHANGES      functions  NEWS   rbash.ps   scripts.v2
article.txt  bashdb      bashref.ps    COMPAT       INTRO      NOTES  rose94.ps  startup-files
bash.0       bash.html   builtins.0    complete     loadables  POSIX  scripts
14:14:10
$lynx bashref.html

Статистика

Время первой команды журнала14:07:44 2006- 8- 7
Время последней команды журнала14:14:10 2006- 8- 7
Количество командных строк в журнале29
Процент команд с ненулевым кодом завершения, %34.48
Процент синтаксически неверно набранных команд, % 3.45
Суммарное время работы с терминалом *, час 0.11
Количество командных строк в единицу времени, команда/мин 4.51
Частота использования команд
cd16|=======================================================| 55.17%
ls8|===========================| 27.59%
pwd3|==========| 10.34%
cd~1|===| 3.45%
lynx1|===| 3.45%
____
*) Интервалы неактивности длительностью 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$