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

Содержание

Журнал

Понедельник (11/27/17)

/dev/pts/4
12:46:13
$cd ..

12:46:16
$cd ..

12:46:18
$cd scripting/perl
l3script: cd: scripting/perl: Нет такого файла или каталога
12:46:33
$cd scripting
l3script: cd: scripting: Нет такого файла или каталога
12:46:45
$tree
.
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── doc
│   └── scripting
│       └── perl
├── freebsd.jpg
├── granata.jpg
...
│   └── f1h
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
18 directories, 78 files
12:46:50
$cd doc

12:47:03
$tree
.
└── scripting
    └── perl
2 directories, 0 files
12:47:04
$cd scripting/

12:47:43
$mkdir python

12:48:01
$tree\
> tree
l3script: treetree: команда не найдена
12:48:12
$tree
.
├── perl
└── python
2 directories, 0 files
12:48:15
$cd ..

12:48:23
$mkdir c

12:48:28
$tree
.
├── c
└── scripting
    ├── perl
    └── python
4 directories, 0 files
12:48:29
$cd..
l3script: cd..: команда не найдена
12:49:42
$cd ..

12:49:45
$tree
.
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── doc
│   ├── c
│   └── scripting
│       ├── perl
│       └── python
...
│   └── f1h
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
20 directories, 78 files
12:49:47
$cd ..

12:50:36
$tree
.
├── ivan
├── petr
└── user
    ├── bigfile
    ├── bin
    │   ├── bigwork
    │   └── signal_trap
    ├── doc
    │   ├── c
...
    │   └── f1h
    ├── text
    │   ├── comment-me.txt
    │   ├── core
    │   ├── hello-vi.txt
    │   ├── hellow
    │   ├── unixoid.err.txt
    │   └── unixoid.orig.txt
    └── touchlist
23 directories, 78 files
12:50:38
$rm -r doc
rm: невозможно удалить «doc»: Нет такого файла или каталога
12:51:17
$rm -r home/doc
rm: невозможно удалить «home/doc»: Нет такого файла или каталога
12:51:52
$cd ..

12:52:06
$rm -r home/doc
rm: невозможно удалить «home/doc»: Нет такого файла или каталога
12:52:08
$cd home

12:52:18
$cd doc
l3script: cd: doc: Нет такого файла или каталога
12:52:21
$cd /doc
l3script: cd: /doc: Нет такого файла или каталога
12:52:52
$tree
.
├── ivan
├── petr
└── user
    ├── bigfile
    ├── bin
    │   ├── bigwork
    │   └── signal_trap
    ├── doc
    │   ├── c
...
    │   └── f1h
    ├── text
    │   ├── comment-me.txt
    │   ├── core
    │   ├── hello-vi.txt
    │   ├── hellow
    │   ├── unixoid.err.txt
    │   └── unixoid.orig.txt
    └── touchlist
23 directories, 78 files
12:52:56
$cd user

12:53:13
$cd doc

12:53:16
$tree
.
├── c
└── scripting
    ├── perl
    └── python
4 directories, 0 files
12:53:19
$rm -r user/doc
rm: невозможно удалить «user/doc»: Нет такого файла или каталога
12:53:39
$c ..
l3script: c: команда не найдена
12:53:50
$cd ..

12:53:52
$rm -r user/doc
rm: невозможно удалить «user/doc»: Нет такого файла или каталога
12:53:54
$cd user
l3script: cd: user: Нет такого файла или каталога
12:54:00
$cd doc

12:54:04
$tree
.
├── c
└── scripting
    ├── perl
    └── python
4 directories, 0 files
12:54:07
$mkdir -p pics/forweb/inf/2002/summer

12:56:05
$tree
.
├── c
├── pics
│   └── forweb
│       └── inf
│           └── 2002
│               └── summer
└── scripting
    ├── perl
    └── python
9 directories, 0 files
12:56:07
$cd ~

12:56:22
$tree
.
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── doc
│   ├── c
│   ├── pics
│   │   └── forweb
│   │       └── inf
...
│   └── f1h
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
25 directories, 78 files
12:56:25
$touch a b c

12:56:50
$ls
a            Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pics
b            lpi 1                                  press_any_key_to_continue.jpg
bigfile      lpi 2                                  proj
bin          man_smb_conf                           sh
c            matrix.jpg                             source
doc          names                                  test
freebsd.jpg  ogo.jpg                                text
granata.jpg  pamyatka.pdf                           touchlist
12:56:52
$rm a b c

12:57:05
$ls
bigfile                                ogo.jpg
bin                                    pamyatka.pdf
doc                                    pics
freebsd.jpg                            press_any_key_to_continue.jpg
granata.jpg                            proj
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  sh
lpi 1                                  source
lpi 2                                  test
man_smb_conf                           text
matrix.jpg                             touchlist
names
12:57:07
$tree
.
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── doc
│   ├── c
│   ├── pics
│   │   └── forweb
│   │       └── inf
...
│   └── f1h
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
25 directories, 78 files
12:57:31
$rm -r doc

12:57:46
$tree
.
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── freebsd.jpg
├── granata.jpg
├── Light_Alloy_4.4.784_RC2_by_FAFNIR.exe
├── lpi 1
│   ├── core
...
│   └── f1h
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
15 directories, 78 files
12:57:49
$cd ~

13:01:17
$mkdir /backup
mkdir: невозможно создать каталог «/backup»: Отказано в доступе
13:01:40
$mkdir ~/backup

13:01:47
$tree
.
├── backup
├── bigfile
├── bin
│   ├── bigwork
│   └── signal_trap
├── freebsd.jpg
├── granata.jpg
├── Light_Alloy_4.4.784_RC2_by_FAFNIR.exe
├── lpi 1
...
│   └── f1h
├── text
│   ├── comment-me.txt
│   ├── core
│   ├── hello-vi.txt
│   ├── hellow
│   ├── unixoid.err.txt
│   └── unixoid.orig.txt
└── touchlist
16 directories, 78 files
13:01:51
$cp ~/proj/x-project/x ~/proj/x-project/y ~/project/z ~/bin
cp: не удалось выполнить stat для «/home/user/project/z»: Нет такого файла или каталога
13:03:11
$cp ~/proj/x-project/x ~/proj/x-project/y ~/project/z ~/bin
cp: не удалось выполнить stat для «/home/user/project/z»: Нет такого файла или каталога
13:03:34
$cd ~/proj/x-project

13:04:18
$cp x y z ~/bin

13:04:55
$ls
x  y  z
13:05:22
$cd ..

13:05:30
$xd ..
l3script: xd: команда не найдена
13:05:33
$cd ..

13:05:34
$cd ..

13:05:36
$ls
ivan  petr  user
13:05:39
$cd ~

13:05:51
$ls
backup                                 ogo.jpg
bigfile                                pamyatka.pdf
bin                                    pics
freebsd.jpg                            press_any_key_to_continue.jpg
granata.jpg                            proj
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  sh
lpi 1                                  source
lpi 2                                  test
man_smb_conf                           text
matrix.jpg                             touchlist
names
13:05:53
$cd bin

13:06:06
$ls
bigwork  signal_trap  x  y  z
13:06:08
$cd ..

13:06:49
$cd ..

13:06:50
$cd ~/proj

13:07:15
$ls
core  x-project
13:07:18
$mkdir x-backup

13:07:31
$ls
core  x-backup  x-project
13:07:32
$cd x-project

13:08:09
$ls
x  y  z
13:08:11
$cp x y z /x-backup
cp: указанная цель «/x-backup» не является каталогом
13:08:45
$cp x y z ../x-backup

13:08:54
$cd ..

13:08:58
$ls
core  x-backup  x-project
13:09:01
$cd x-backup/

13:09:09
$ls
x  y  z
13:09:11
$cd ~

13:10:30
$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
13:10:38
$ls -lt /etc
итого 656
-rw-r--r-- 1 root root      59 Ноя 27 12:20 resolv.conf
-rw-r--r-- 1 root root     986 Ноя 27 11:12 passwd
-rw------- 1 root root     986 Ноя 27 11:12 passwd-
-rw-r----- 1 root shadow  1029 Ноя 27 11:11 shadow
-rw-r----- 1 root shadow   473 Ноя 27 11:11 gshadow
-rw-r--r-- 1 root root     569 Ноя 27 11:11 group
-rw------- 1 root root     906 Ноя 27 11:01 shadow-
-rw------- 1 root root     556 Ноя 27 10:58 group-
-rw------- 1 root root     464 Ноя 27 10:58 gshadow-
...
-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
13:11:43
$touch -t 198010011739 file

13:12:20
$ls -l file
-rw-r--r-- 1 user user 0 Окт  1  1980 file
13:12:26
$ls -lrt /etc
итого 656
-rw-r--r-- 1 root root       9 Авг  7  2006 host.conf
-rw-r--r-- 1 root root     475 Авг 28  2006 nsswitch.conf
-rw-r--r-- 1 root root    1260 Май 30  2008 ucf.conf
-rw-r--r-- 1 root root     599 Фев 19  2009 logrotate.conf
-rw-r--r-- 1 root root     851 Июл 29  2011 profile
-rw-r--r-- 1 root root   24269 Фев 12  2012 mime.types
-rw-r--r-- 1 root root     449 Фев 12  2012 mailcap.order
-rw-r--r-- 1 root root     346 Апр  7  2012 discover-modprobe.conf
-rw-r--r-- 1 root root    1911 Апр 14  2012 nail.rc
...
-rw-r--r-- 1 root root     232 Ноя 24 15:19 blkid.tab
-rw------- 1 root root     464 Ноя 27 10:58 gshadow-
-rw------- 1 root root     556 Ноя 27 10:58 group-
-rw------- 1 root root     906 Ноя 27 11:01 shadow-
-rw-r--r-- 1 root root     569 Ноя 27 11:11 group
-rw-r----- 1 root shadow   473 Ноя 27 11:11 gshadow
-rw-r----- 1 root shadow  1029 Ноя 27 11:11 shadow
-rw------- 1 root root     986 Ноя 27 11:12 passwd-
-rw-r--r-- 1 root root     986 Ноя 27 11:12 passwd
-rw-r--r-- 1 root root      59 Ноя 27 12:20 resolv.conf
13:13:03
$ls
backup                                 lpi 2                          proj
bigfile                                man_smb_conf                   sh
bin                                    matrix.jpg                     source
file                                   names                          test
freebsd.jpg                            ogo.jpg                        text
granata.jpg                            pamyatka.pdf                   touchlist
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  pics
lpi 1                                  press_any_key_to_continue.jpg
13:14:17
$cd ~

13:14:46
$cd proj/x-
x-backup/  x-project/
13:14:46
$cd proj/x-
x-backup/  x-project/
13:14:46
$cd proj/x-
x-backup/  x-project/
13:14:46
$cd proj/x-project/

13:15:11
$ln -s x x-symlink

13:15:32
$ln
ln: пропущен операнд, задающий файл
Попробуйте «ln --help» для получения более подробного описания.
13:15:35
$tree
.
├── x
├── x-symlink -> x
├── y
└── z
0 directories, 4 files
13:15:45
$ls -il
итого 0
147 -rwxr-xr-x 1 user user 0 Окт  9  2014 x
192 lrwxrwxrwx 1 user user 1 Ноя 27 14:15 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
13:15:55
$rm x

13:17:06
$ls -il
итого 0
192 lrwxrwxrwx 1 user user 1 Ноя 27 14:15 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
13:17:09
$cd ..

13:17:42
$ls
core  x-backup  x-project
13:17:44
$cd x-backup/

Статистика

Время первой команды журнала12:46:13 2017-11-27
Время последней команды журнала13:17:44 2017-11-27
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, %14.85
Процент синтаксически неверно набранных команд, % 3.96
Суммарное время работы с терминалом *, час 0.53
Количество командных строк в единицу времени, команда/мин 3.20
Частота использования команд
cd40|=======================================| 39.60%
ls19|==================| 18.81%
tree15|==============| 14.85%
rm8|=======| 7.92%
mkdir6|=====| 5.94%
cp5|====| 4.95%
touch2|=| 1.98%
ln2|=| 1.98%
tree\1|| 0.99%
cd..1|| 0.99%
c1|| 0.99%
xd1|| 0.99%
____
*) Интервалы неактивности длительностью 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$