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

Содержание

Журнал

Понедельник (02/22/21)

/dev/pts/4
08:46:15
$alias
alias ls='ls --color=auto'
прошло 56 минут
09:42:27
$ls
bigfile                                names
bin                                    ogo.jpg
freebsd.jpg                            pamyatka.pdf
granata.jpg                            press_any_key_to_continue.jpg
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  proj
lpi 1                                  sh
lpi 2                                  text
man_smb_conf                           touchlist
matrix.jpg
09:42:39
$pwd
/home/user
прошло >9 часов
19:38:04
$cd ..

19:38:17
$pwd
/home
19:38:28
$ls
ivan  petro  user
19:38:35
$cd

19:39:06
$ls -lF
итого 2928
-rwxr-xr-x 1 user user    7994 Окт  9  2014 bigfile*
drwxr-xr-x 2 user user    4096 Окт  9  2014 bin/
-rwxr-xr-x 1 user user  232966 Окт  9  2014 freebsd.jpg*
-rwxr-xr-x 1 user user   52884 Окт  9  2014 granata.jpg*
-rwxr-xr-x 1 user user 1751860 Окт  9  2014 Light_Alloy_4.4.784_RC2_by_FAFNIR.exe*
drwxr-xr-x 2 user user    4096 Окт  9  2014 lpi 1/
drwxr-xr-x 2 user user    4096 Окт  9  2014 lpi 2/
-rwxr-xr-x 1 user user   26648 Окт  9  2014 man_smb_conf*
-rwxr-xr-x 1 user user  755680 Окт  9  2014 matrix.jpg*
drwxr-xr-x 3 user user    4096 Окт  9  2014 names/
-rwxr-xr-x 1 user user   17622 Окт  9  2014 ogo.jpg*
-rwxr-xr-x 1 user user   84663 Окт  9  2014 pamyatka.pdf*
-rwxr-xr-x 1 user user   23048 Окт  9  2014 press_any_key_to_continue.jpg*
drwxr-xr-x 3 user user    4096 Окт  9  2014 proj/
drwxr-xr-x 2 user user    4096 Окт  9  2014 sh/
drwxr-xr-x 2 user user    4096 Окт  9  2014 text/
-rwxr-xr-x 1 user user      75 Окт  9  2014 touchlist*
19:39:29
$ls -lFa
итого 2964
drwxr-xr-x 10 user user    4096 Окт  9  2014 ./
drwxr-xr-x  5 root root    4096 Фев 22 09:43 ../
-rw-------  1 user user      11 Окт  9  2014 .bash_history
-rw-r--r--  1 user user     220 Июн 27  2014 .bash_logout
-rw-r--r--  1 user root      10 Июн 27  2014 .bash_profile
-rw-r--r--  1 user user    3457 Июн 27  2014 .bashrc
-rwxr-xr-x  1 user user    7994 Окт  9  2014 bigfile*
drwxr-xr-x  2 user user    4096 Окт  9  2014 bin/
-rwxr-xr-x  1 user user  232966 Окт  9  2014 freebsd.jpg*
...
-rwxr-xr-x  1 user user  755680 Окт  9  2014 matrix.jpg*
drwxr-xr-x  3 user user    4096 Окт  9  2014 names/
-rwxr-xr-x  1 user user   17622 Окт  9  2014 ogo.jpg*
-rwxr-xr-x  1 user user   84663 Окт  9  2014 pamyatka.pdf*
-rwxr-xr-x  1 user user   23048 Окт  9  2014 press_any_key_to_continue.jpg*
-rw-r--r--  1 user user     675 Июн 27  2014 .profile
drwxr-xr-x  3 user user    4096 Окт  9  2014 proj/
drwxr-xr-x  2 user user    4096 Окт  9  2014 sh/
drwxr-xr-x  2 user user    4096 Окт  9  2014 text/
-rwxr-xr-x  1 user user      75 Окт  9  2014 touchlist*
19:40:05
$cd /usr/share/doc

19:40:53
$ls
acpi                    isc-dhcp-client           libmpc2                    mawk
acpid                   isc-dhcp-common           libmpfr4                   mime-support
acpi-support-base       kbd                       libmro-compat-perl         module-init-tools
adduser                 keyboard-configuration    libncurses5                mount
apt                     klibc-utils               libncursesw5               multiarch-support
aptitude                kmod                      libnewt0.52                nano
aptitude-common         laptop-detect             libnfnetlink0              ncurses-base
apt-utils               less                      libp11-kit0                ncurses-bin
base-files              lib32gcc1                 libpam0g                   ncurses-term
base-passwd             lib32gomp1                libpam-modules             netbase
...
info                    libkrb5-3                 lockfile-progs             vim-runtime
initramfs-tools         libkrb5support0           login                      vim-tiny
initscripts             liblocale-gettext-perl    logrotate                  w3m
insserv                 liblockfile1              lsb-base                   wget
installation-report     liblockfile-bin           lynx                       whiptail
install-info            liblwres80                lynx-cur                   xauth
iproute                 liblzma5                  make                       xkb-data
iptables                libmodule-build-perl      man-db                     xml-core
iptraf                  libmodule-signature-perl  manpages                   xz-utils
iputils-ping            libmount1                 manpages-dev               zlib1g
19:41:01
$cd bash

19:42:45
$ls
changelog.Debian.gz  copyright       INTRO.gz  README.abs-guide           README.Debian.gz
CHANGES.gz           FAQ             NEWS.gz   README.bash_completion.gz
COMPAT.gz            inputrc.arrows  POSIX.gz  README.commands.gz
19:42:48
$cd

19:44:00
$mkdir source doc pics

19:44:27
$ls
bigfile      granata.jpg                            man_smb_conf  pamyatka.pdf                   sh
bin          Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    pics                           source
doc          lpi 1                                  names         press_any_key_to_continue.jpg  text
freebsd.jpg  lpi 2                                  ogo.jpg       proj                           touchlist
19:44:32
$mkdir doc/scripting/perl
mkdir: невозможно создать каталог «doc/scripting/perl»: Нет такого файла или каталога
19:45:53
$mkdir -p doc/scripting/perl

19:46:23
$mkdir -p doc/scripting/python doc/c pics/forweb/info/2002/summer

19:47:38
$ls
bigfile      granata.jpg                            man_smb_conf  pamyatka.pdf                   sh
bin          Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    pics                           source
doc          lpi 1                                  names         press_any_key_to_continue.jpg  text
freebsd.jpg  lpi 2                                  ogo.jpg       proj                           touchlist
19:47:42
$cd doc

19:47:51
$ls
c  scripting
19:47:54
$cd scripting/

19:48:02
$ls
perl  python
19:48:05
$cd

19:48:11
$cd pics/forweb/

19:48:29
$cd info/

19:48:36
$cd 2002/

19:48:47
$cd summer/

19:48:52
$cd

19:48:59
$touch a b c

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

19:50:04
$ls
bigfile      granata.jpg                            man_smb_conf  pamyatka.pdf                   sh
bin          Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    pics                           source
doc          lpi 1                                  names         press_any_key_to_continue.jpg  text
freebsd.jpg  lpi 2                                  ogo.jpg       proj                           touchlist
19:50:09
$rmdir -p pics/forweb/info/2002/summer/

19:50:53
$rm -r doc/

19:51:26
$mkdir vkykla

19:53:04
$rmdir -v vkykla/
rmdir: удаление каталога, «vkykla/»
19:53:19
$mkdir vkykla

19:53:26
$rmdir -i vkykla/
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:53:33
$mkdir -p v/kykla

19:54:11
$rmkdir -i -r v/kykla
l3script: rmkdir: команда не найдена
19:54:37
$rmdir -i -r v/kykla
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:54:49
$rmdir --i -r v/kykla
rmdir: неверный ключ -- r
Попробуйте «rmdir --help» для получения более подробного описания.
19:55:05
$rmdir --i --r v/kykla
rmdir: ключ --r не распознан
Попробуйте «rmdir --help» для получения более подробного описания.
19:55:17
$rmdir -i v/kykla
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:55:35
$mkdirvv
l3script: mkdirvv: команда не найдена
19:56:19
$mkdir vv

19:56:27
$rmdir -i v vv
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:56:39
$rmdir -i v/kykla/ vv
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:56:57
$cd v

19:58:07
$touch a b

19:58:15
$cd ..

19:58:21
$rmdir -i v/kykla/ vv
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:58:28
$rmdir -r v/kykla/ vv
rmdir: неверный ключ -- r
Попробуйте «rmdir --help» для получения более подробного описания.
19:58:43
$rmdir -i v/kykla/
rmdir: неверный ключ -- i
Попробуйте «rmdir --help» для получения более подробного описания.
19:59:09
$rmdir -r v/kykla/
rmdir: неверный ключ -- r
Попробуйте «rmdir --help» для получения более подробного описания.
19:59:15
$rmdir r v
v/      vkykla/ vv/
19:59:15
$rmdir r v
v/      vkykla/ vv/
19:59:15
$rmdir r v
rmdir: не удалось удалить «r»: Нет такого файла или каталога
rmdir: не удалось удалить «v»: Каталог не пуст
19:59:37
$rmdir -r v
rmdir: неверный ключ -- r
Попробуйте «rmdir --help» для получения более подробного описания.
19:59:46
$rmdir --r v
rmdir: ключ --r не распознан
Попробуйте «rmdir --help» для получения более подробного описания.
20:00:40
$[user@debian3:2002]$ cd summer/
l3script: [user@debian3:2002]$: команда не найдена
20:01:07
$rmdir -R v
rmdir: неверный ключ -- R
Попробуйте «rmdir --help» для получения более подробного описания.
20:01:12
$rmdir --help
Использование: rmdir [КÐ
ли они пусты.
      --ignore-fail-on-non-empty
                  игнорировать все ошибки, которые возникают из-за того, что
                  каталог не пуст
  -p, --parents   удалить КАТАÐmdir -p a/b/c»
                  делает то же, что и «rmdir a/b/c a/b a».
  -v, --verbose   выводить сообщение для каждого обработанного каталога
      --help     показать эту справку и выйти
      --version  показать информацию о версии и выйти
Об ошибках в rmdir сообщайте по адресу bug-coreutils@gnu.org.
Домашняя страница GNU coreutils: <http://www.gnu.org/software/coreutils/>
Справка по работе с программами GNU: <http://www.gnu.org/gethelp/>
Об ошибках в переводе сообщений «rmdir» сообщайте по адресу <gnu@mx.ru>
Полная документация доступна по команде: info coreutils 'rmdir invocation'
20:01:22
$ls
bigfile                                lpi 1         ogo.jpg                        source     vv
bin                                    lpi 2         pamyatka.pdf                   text
freebsd.jpg                            man_smb_conf  press_any_key_to_continue.jpg  touchlist
granata.jpg                            matrix.jpg    proj                           v
Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  names         sh                             vkykla
20:02:45
$rmdir v
rmdir: не удалось удалить «v»: Каталог не пуст
20:03:03
$rmdir vv

20:03:11
$rmdir vkykla/

20:03:17
$ls
bigfile      Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    press_any_key_to_continue.jpg  text
bin          lpi 1                                  names         proj                           touchlist
freebsd.jpg  lpi 2                                  ogo.jpg       sh                             v
granata.jpg  man_smb_conf                           pamyatka.pdf  source
20:03:22
$rm -ir v
rm: спуститься в каталог «v»? y
rm: удалить пустой обычный файл «v/b»? y
rm: удалить каталог «v/kykla»? y
rm: удалить пустой обычный файл «v/a»? y
rm: удалить каталог «v»? y
20:04:50
$cp _/proj/x-pro^C

20:11:00
$proj
proj
20:11:00
$proj
proj
20:11:00
$proj
proj
20:11:00
$proj
proj
20:11:00
$proj
proj
20:11:00
$proj
proj
20:11:00
$ls
bigfile      Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    press_any_key_to_continue.jpg  text
bin          lpi 1                                  names         proj                           touchlist
freebsd.jpg  lpi 2                                  ogo.jpg       sh
granata.jpg  man_smb_conf                           pamyatka.pdf  source
20:11:57
$cp proj/x-project/x proj/x-project/y proj/x-project/z /bin
cp: невозможно создать обычный файл «/bin/x»: Отказано в доступе
cp: невозможно создать обычный файл «/bin/y»: Отказано в доступе
cp: невозможно создать обычный файл «/bin/z»: Отказано в доступе
20:13:01
$cp ~/proj/x-project/x ~/proj/x-project/y ~/proj/x-project/z ~/bin

20:14:24
$cd proj/x-project/

20:14:43
$cp x y z ~/bin

20:14:59
$cd

20:15:40
$cp -R ~/proj/x-project/ ~/pr
press_any_key_to_continue.jpg  proj/
20:15:40
$cp -R ~/proj/x-project/ ~/proj/x-backup

20:17:08
$cd proj/

20:17:16
$ls
core  x-backup  x-project
20:17:18
$cd x-backup/

20:17:26
$ls
x  y  z
20:17:29
$cd

20:17:31
$cp -R ~/proj/x-project/ ~/proj/x-backup

20:17:56
$cp -R ~/proj/x-project/ ~/proj/x-backup

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

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

20:20:10
$cp -R ~/proj/x-project/ ~/proj/x-backup/

20:20:15
$cd

20:21:03
$mkdir ~/backup

20:21:25
$mv ~/proj/x-backup/ backup/

20:22:10
$ls
backup       granata.jpg                            man_smb_conf  pamyatka.pdf                   source
bigfile      Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    press_any_key_to_continue.jpg  text
bin          lpi 1                                  names         proj                           touchlist
freebsd.jpg  lpi 2                                  ogo.jpg       sh

Статистика

Время первой команды журнала08:46:15 2021- 2-22
Время последней команды журнала20:22:10 2021- 2-22
Количество командных строк в журнале100
Процент команд с ненулевым кодом завершения, %20.00
Процент синтаксически неверно набранных команд, % 3.00
Суммарное время работы с терминалом *, час 0.74
Количество командных строк в единицу времени, команда/мин 2.26
Частота использования команд
rmdir23|=======================| 23.00%
cd21|=====================| 21.00%
ls18|==================| 18.00%
cp11|===========| 11.00%
mkdir9|=========| 9.00%
proj6|======| 6.00%
rm3|===| 3.00%
touch2|==| 2.00%
pwd2|==| 2.00%
alias1|=| 1.00%
mkdirvv1|=| 1.00%
rmkdir1|=| 1.00%
mv1|=| 1.00%
[user@debian3:2002]$1|=| 1.00%
____
*) Интервалы неактивности длительностью 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$