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

Содержание

Журнал

Понедельник (03/26/18)

/dev/pts/4
13:23:51
$cd/:
l3script: cd/:: Нет такого файла или каталога
13:24:22
$/
l3script: /: Это каталог
13:24:40
$cd/
l3script: cd/: Нет такого файла или каталога
13:24:57
$cd/:
l3script: cd/:: Нет такого файла или каталога
13:25:15
$cd/:
l3script: cd/:: Нет такого файла или каталога
13:25:36
$cd/:/.
l3script: cd/:/.: Нет такого файла или каталога
13:25:59
$/
l3script: /: Это каталог
13:26:05
$cd /

13:26:43
$ls
bin   etc         lib    lost+found  opt   run      srv  usr
boot  home        lib32  media       proc  sbin     sys  var
dev   initrd.img  lib64  mnt         root  selinux  tmp  vmlinuz
13:26:52
$`
> lscd
> cd
> $cd
> ^C41
13:28:27
$$ls

13:28:43
$~
l3script: /home/user: Это каталог
13:28:56
$cd~
l3script: cd~: команда не найдена
13:29:05
$$ cd ~
l3script: $: команда не найдена
13:29:26
$pwd
/
13:29:38
$cd

13:30:01
$pwd
/home/user
13:30:25
$ls
bigfile                                lpi 2         press_any_key_to_continue.jpg
bin                                    man_smb_conf  proj
freebsd.jpg                            matrix.jpg    sh
granata.jpg                            names         text
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  ogo.jpg       touchlist
lpi 1                                  pamyatka.pdf
13:30:44
$~
l3script: /home/user: Это каталог
13:31:10
$ls
bigfile                                lpi 2         press_any_key_to_continue.jpg
bin                                    man_smb_conf  proj
freebsd.jpg                            matrix.jpg    sh
granata.jpg                            names         text
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  ogo.jpg       touchlist
lpi 1                                  pamyatka.pdf
13:31:24
$$cd /usr/share/doc
l3script: /usr/share/doc: Это каталог
13:32:39
$$ ls
l3script: $: команда не найдена
13:33:03
$cd

13:34:54
$mkdir:
l3script: mkdir:: команда не найдена
13:35:21
$mkdir:
l3script: mkdir:: команда не найдена
13:36:14
$mkdir source doc pics

13:36:58
$$ ls
l3script: $: команда не найдена
13:37:10
$mkdir source doc pics
mkdir: невозможно создать каталог «source»: Файл существует
mkdir: невозможно создать каталог «doc»: Файл существует
mkdir: невозможно создать каталог «pics»: Файл существует
13:38:22
$cd

13:38:28
$mkdir source doc pics
mkdir: невозможно создать каталог «source»: Файл существует
mkdir: невозможно создать каталог «doc»: Файл существует
mkdir: невозможно создать каталог «pics»: Файл существует
13:38:31
$ls
bigfile                                lpi 2         press_any_key_to_continue.jpg
bin                                    man_smb_conf  proj
doc                                    matrix.jpg    sh
freebsd.jpg                            names         source
granata.jpg                            ogo.jpg       text
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pamyatka.pdf  touchlist
lpi 1                                  pics
13:38:38
$ls
bigfile                                lpi 2         press_any_key_to_continue.jpg
bin                                    man_smb_conf  proj
doc                                    matrix.jpg    sh
freebsd.jpg                            names         source
granata.jpg                            ogo.jpg       text
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pamyatka.pdf  touchlist
lpi 1                                  pics
13:41:12
$mkdir scripting/perl,^C

13:44:32
$mkdir -p doc/scripting/pert

13:46:35
$mkdir -p doc/scripting/perl

13:46:46
$mkdir scripting/perl,scripting/python
mkdir: невозможно создать каталог «scripting/perl,scripting/python»: Нет такого файла или каталога
13:47:30
$mkdir scripting/python doc/c pics/forwed/snfo/2002/summer
mkdir: невозможно создать каталог «scripting/python»: Нет такого файла или каталога
mkdir: невозможно создать каталог «pics/forwed/snfo/2002/summer»: Нет такого файла или каталога
13:49:22
$mkdir -p dos/scripting/python doc/c pics/forwed/snfo/2002/summer

13:51:08
$ls
bigfile                                lpi 1         pics
bin                                    lpi 2         press_any_key_to_continue.jpg
doc                                    man_smb_conf  proj
dos                                    matrix.jpg    sh
freebsd.jpg                            names         source
granata.jpg                            ogo.jpg       text
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pamyatka.pdf  touchlist
13:51:25
$pwd
/home/user
13:51:59
$touch
touch: пропущен операнд, задающий файл
Попробуйте «touch --help» для получения более подробного описания.
13:52:32
$touch a b c

13:53:07
$rm
rm: пропущен операнд
Попробуйте «rm --help» для получения более подробного описания.
13:53:24
$mkdir -p dos/scripting/python doc/c pics/forwed/snfo/2002/summer/

13:54:11
$ls
a            granata.jpg                            pamyatka.pdf
b            Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pics
bigfile      lpi 1                                  press_any_key_to_continue.jpg
bin          lpi 2                                  proj
c            man_smb_conf                           sh
doc          matrix.jpg                             source
dos          names                                  text
freebsd.jpg  ogo.jpg                                touchlist
13:54:21
$touch a b c

13:55:13
$rm
rm: пропущен операнд
Попробуйте «rm --help» для получения более подробного описания.
13:55:37
$rm a b c

13:56:02
$tree
.
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── doc
│   ├── c
│   └── scripting
│       ├── perl
│       └── pert
...
├── source
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
24 directories, 73 files
13:56:12
$rmdir -p pics/forwed/info/2002/summer
rmdir: не удалось удалить «pics/forwed/info/2002/summer»: Нет такого файла или каталога
13:58:39
$rm -r doc

13:59:16
$cp
cp: пропущен операнд, задающий файл
Попробуйте «cp --help» для получения более подробного описания.
13:59:41
$cp:
l3script: cp:: команда не найдена
13:59:51
$cp ~/proj/x-project/x ~/proj/x-project/y ~/proj/x-project/z ~/bin

14:04:06
$cd ~/proj/x-project

14:05:06
$cp x y z ~/bin

14:05:41
$cp -R ~/proj/x-project ~/proj/x-backup

14:07:17
$cp -R ~/proj/x-project ~/proj/x-backup

14:10:11
$~
l3script: /home/user: Это каталог
14:10:58
$cd

14:11:12
$mkdir ~/backup

14:11:58
$cd

14:12:10
$mv ~/proj/x-backup backup

14:13:18
$ls
backup                                 lpi 1         pics
bigfile                                lpi 2         press_any_key_to_continue.jpg
bin                                    man_smb_conf  proj
dos                                    matrix.jpg    sh
freebsd.jpg                            names         source
granata.jpg                            ogo.jpg       text
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pamyatka.pdf  touchlist
14:13:27
$ls -l /etc
итого 656
drwxr-xr-x 3 root root    4096 Окт 13  2014 acpi
-rw-r--r-- 1 root root    2981 Июн 27  2014 adduser.conf
-rw-r--r-- 1 root root      44 Окт 15  2014 adjtime
-rw-r--r-- 1 root root     196 Июн 27  2014 aliases
drwxr-xr-x 2 root root    4096 Окт 13  2014 alternatives
drwxr-xr-x 6 root root    4096 Окт 13  2014 apt
-rw-r--r-- 1 root root    1895 Дек 30  2012 bash.bashrc
-rw-r--r-- 1 root root      45 Июн 17  2012 bash_completion
drwxr-xr-x 2 root root    4096 Июн 27  2014 bash_completion.d
...
-rw-r--r-- 1 root root      12 Июн 27  2014 timezone
-rw-r--r-- 1 root root    1552 Окт 19  2012 trafshow
-rw-r--r-- 1 root root    1260 Май 30  2008 ucf.conf
drwxr-xr-x 4 root root    4096 Июн 27  2014 udev
drwxr-xr-x 3 root root    4096 Июн 27  2014 ufw
drwxr-xr-x 2 root root    4096 Июн 27  2014 vim
drwxr-xr-x 2 root root    4096 Июн 27  2014 w3m
-rw-r--r-- 1 root root    4496 Фев  1  2014 wgetrc
drwxr-xr-x 3 root root    4096 Июн 27  2014 X11
drwxr-xr-x 2 root root    4096 Июн 27  2014 xml
14:14:48
$ls -lt /etc
итого 656
-rw-r--r-- 1 root root      34 Мар 26 12:41 resolv.conf
-rw-r----- 1 root shadow  1029 Мар 26 10:35 shadow
-rw-r----- 1 root shadow   473 Мар 26 10:34 gshadow
-rw-r--r-- 1 root root     569 Мар 26 10:34 group
-rw-r--r-- 1 root root     986 Мар 26 10:34 passwd
-rw------- 1 root root     906 Мар 26 10:30 shadow-
-rw------- 1 root root     556 Мар 26 10:30 group-
-rw------- 1 root root     464 Мар 26 10:30 gshadow-
-rw------- 1 root root     947 Мар 26 10:30 passwd-
...
-rw-r--r-- 1 root root     552 Апр 29  2012 pam.conf
-rw-r--r-- 1 root root    1911 Апр 14  2012 nail.rc
-rw-r--r-- 1 root root     346 Апр  7  2012 discover-modprobe.conf
-rw-r--r-- 1 root root     449 Фев 12  2012 mailcap.order
-rw-r--r-- 1 root root   24269 Фев 12  2012 mime.types
-rw-r--r-- 1 root root     851 Июл 29  2011 profile
-rw-r--r-- 1 root root     599 Фев 19  2009 logrotate.conf
-rw-r--r-- 1 root root    1260 Май 30  2008 ucf.conf
-rw-r--r-- 1 root root     475 Авг 28  2006 nsswitch.conf
-rw-r--r-- 1 root root       9 Авг  7  2006 host.conf
14:17:11
$ls -l file
ls: невозможно получить доступ к file: Нет такого файла или каталога
14:17:35
$cd proj/x-project

14:19:35
$ln -c x x-symlink
ln: неверный ключ -- c
Попробуйте «ln --help» для получения более подробного описания.
14:20:15
$ln -s x x-symlink

14:21:11
$ln x x-hardlink

14:22:01
$ls -il
итого 0
147 -rwxr-xr-x 2 user user 0 Окт  9  2014 x
147 -rwxr-xr-x 2 user user 0 Окт  9  2014 x-hardlink
194 lrwxrwxrwx 1 user user 1 Мар 26 15:21 x-symlink -> x
145 -rwxr-xr-x 1 user user 0 Окт  9  2014 y
146 -rwxr-xr-x 1 user user 0 Окт  9  2014 z
14:22:14
$rm x

14:23:16
$ls -il
итого 0
147 -rwxr-xr-x 1 user user 0 Окт  9  2014 x-hardlink
194 lrwxrwxrwx 1 user user 1 Мар 26 15:21 x-symlink -> x
145 -rwxr-xr-x 1 user user 0 Окт  9  2014 y
146 -rwxr-xr-x 1 user user 0 Окт  9  2014 z
14:23:36
$mv x-hardlink
x-hardlink  x-symlink   y           z
14:23:36
$mv x-hardlink
x-hardlink  x-symlink   y           z
14:23:36
$mv x-hardlink x

14:25:07
$l
l3                 ld.gold            lnstat             lsattr
l3-agent           less               loadkeys           lsblk
l3cd               lessecho           loadunimap         lscpu
l3_close_session   lessfile           local              lsinitramfs
l3-config          lesskey            locale             lsmod
l3_fix_prompt      lesspipe           localedef          lspci
l3mass_upload      let                locate             lspgpot
l3pwd              lexgrog            locate.findutils   lsusb
l3_save_last_line  lft                lockfile-check     lynx
l3script           lft.db             lockfile-create    lzcat
l3shot             libnetcfg          lockfile-remove    lzcmp
l3upload           line               lockfile-touch     lzdiff
last               link               logger             lzegrep
lastb              links              login              lzfgrep
lastlog            linux32            logname            lzgrep
lcf                linux64            logout             lzless
ld                 linux-boot-prober  look               lzma
ld.bfd             linux-version      lorder             lzmainfo
ldd                ln                 ls                 lzmore
14:25:07
$ls -il
итого 0
147 -rwxr-xr-x 1 user user 0 Окт  9  2014 x
194 lrwxrwxrwx 1 user user 1 Мар 26 15:21 x-symlink -> x
145 -rwxr-xr-x 1 user user 0 Окт  9  2014 y
146 -rwxr-xr-x 1 user user 0 Окт  9  2014 z
14:25:25
$cd

14:27:14
$touch a b c

14:27:42
$rm a b c

14:28:15
$ыsd
l3script: sd: команда не найдена
прошло 30 минут
14:58:39
$which vi
/usr/bin/vi
14:59:26
$vi
прошло 60 минут
16:00:18
$~

Статистика

Время первой команды журнала13:23:51 2018- 3-26
Время последней команды журнала16:00:18 2018- 3-26
Количество командных строк в журнале86
Процент команд с ненулевым кодом завершения, %22.09
Процент синтаксически неверно набранных команд, %15.12
Суммарное время работы с терминалом *, час 1.09
Количество командных строк в единицу времени, команда/мин 1.32
Частота использования команд
ls14|================| 16.28%
mkdir11|============| 12.79%
cd9|==========| 10.47%
rm6|======| 6.98%
cp5|=====| 5.81%
touch4|====| 4.65%
~4|====| 4.65%
mv4|====| 4.65%
pwd3|===| 3.49%
ln3|===| 3.49%
:3|===| 3.49%
$3|===| 3.49%
mkdir:2|==| 2.33%
/2|==| 2.33%
cd~1|=| 1.16%
cp:1|=| 1.16%
`1|=| 1.16%
l1|=| 1.16%
$ls1|=| 1.16%
.1|=| 1.16%
vi1|=| 1.16%
rmdir1|=| 1.16%
ыsd1|=| 1.16%
which1|=| 1.16%
cd/1|=| 1.16%
tree1|=| 1.16%
$cd1|=| 1.16%
____
*) Интервалы неактивности длительностью 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$