Данная практика направлена на получение навыков по изучению руководств, которые доступны вам прямо в ОС GNU/Linux. При их решении пожалуйста воздержитесь от поиска ответов в сети Интернет.

Определение типа приложения с помощью type

Прочитайте встроенную документацию по приложению type (type --help) и выполните следующие задачи.

  1. Определите тип команды type.
  2. Каким образом можно получить встроенную помощь по данному типу команды?
  3. Определите типы команд, указанных ниже. С помощью which определите путь к исполняемому файлу, если команда является исполняемым файлом.
    1. cd
    2. pwd
    3. ls
    4. mkdir
    5. rmdir
    6. cp
    7. mv
    8. touch
    9. echo
    10. which
    11. less

Изучение взаимодействия с приложением less

  1. Посмотрите на встроенную документацию по приложению less: less --help
    1. Какие клавиши позволяют переходить «вверх» и «вниз» по документу?
    2. Какие клавиши позволяют завершить работу приложения less?
  2. Обратите внимание на раздел документации, посвящённый поиску информации в документе. Найдите все вхождения слова forward в документации по less
    1. Используйте горячие клавиши для перехода «вперёд» и «назад» по списку найденных слов.
    2. Перейдите к последнему найденному слову и начните обратный поиск по слову prompt.
    3. Используйте горячие клавиши для перехода «вперёд» и «назад» по списку найденных слов. В чём разница между поиском вперёд и назад?
  3. Завершите просмотр встроенной документации по приложению less.

Изучение документации с помощью приложения man

  1. Посмотрите руководство в системе man по приложению man: man man
    1. Какие существуют секции справочных страниц?
    2. Какие существуют стандартные названия для разделов документации?
    3. Как осуществлять открытие документа из конкретной секции документации?
    4. Как открыть все руководства с одинаковым именем из всех секций?
  2. Посмотрите справочное руководство по приложению ls.
    1. Как просматривать скрытые файлы? Отобразите скрытые файлы в домашнем каталоге.
    2. Как убрать из вывода информацию о специальных каталогах . и ..?
    3. Как просматривать содержимое директории рекурсивно? Отобразите рекурсивно директорию /var/log.

Изучение встроенной документации приложения ls

Прочитайте встроенную документацию по приложению ls. Она доступна после передачи флага --help.

  1. Каким образом можно отсортировать файлы по времени последнего изменения файла?
  2. Отобразите все файлы в каталоге /tmp, включая скрытые. Отсортируйте вывод по времени модификации файла. Сравните оба вывода.
  3. Измените вывод приложения так, чтобы можно было определить тип файла без цветового раскрашивания (классифицировать). В данном режиме к концу файла будут добавлены симоволы: / для директории, @ для ссылок и так далее. Проверьте корректность работы в каталоге /usr/bin
  4. Как добавить в вывод размер файла?
  5. Как преобразовать вывод размера файла в форму, понятную людям? Посмотрите размеры файлов в каталоге /etc.
  6. Ограничьте вывод информации о файлах только одним столбцом.

Изучение встроенной в Bash команды alias для управления псевдонимами

Прочитайте документацию по встроенной команде alias: help alias.

  1. Какие псевдонимы есть у вас в командном интерфейсе?
  2. Определите псевдоним ll, который будет вызывать приложение ls с флагом -l.
  3. Определите псевдоним w, который будет вызывать приложение which.
  4. Откройте новый терминал и проверьте работу созданных псевдонимов.
  5. Удалите один из определённых в терминале псевдонимов.
  6. Определите следующие псевдонимы:

    ...=cd ../..
    ....=cd ../../..
    

    С помощью данных псевдонимов выполните следующие задачи

    1. Перейдите в каталог /usr/bin. Используя относительные пути и псевдонимы перейдите в корневой каталог.
    2. Перейдите в каталог /home/user. Используя относительные пути и псевдонимы перейдите в каталог /etc.
    3. Перейдите в каталог /usr/local/bin. Используя относительные пути и псевдонимы перейдите в каталог /usr/share/doc.

Изучение работы приложения ln по созданию ссылок

Используя руководство по команде ln и встроенную помощь решите следующие задачи.

Подготовьте следующую структуру из файлов и каталогов:

playground
├── data.txt
├── dir1
└── dir2

Только файл data.txt является текстовым, все остальные являются директориями.

  1. Создайте жёсткие ссылки с названием data-link.txt на файл data.txt в каталогах dir1, dir2 и playground.
    • Посмотрите количество жёстких ссылок на файлы data.txt и data-link.txt. Используйте для этого приложение ls с аргументами -l и -i.
  2. Создайте символические ссылки data-sym.txt на файл data.txt в каталогах dir1, dir2 и playground.
    • Посмотрите на количество жёстких ссылок на файл data.txt. Изменилось ли оно?
  3. Создайте символическую ссылку dir1-sym на каталог dir1 в каталоге playground.
  4. Удалите жёсткую ссылку fun-hard в каталоге dir1. Проверьте количество жёстких ссылок на файл data-link.txt.
  5. Удалите файл data.txt. Посмотрите состояние жёстких и символических ссылок в каталоге playground.
  6. Посмотрите содержимое файла data-sym.txt в каталоге playground. Используйте для этого приложение less: less data-sym.txt.
  7. Удалите все символические ссылки в каталоге playground.