Васильев Андрей Михайлович, 2024
Версии презентации
$ type touch
touch является /bin/touchХорошие консольные приложения предоставляют встроенную помощь по использованию,
которую можно посмотреть с помощью аргумента --help
$ mkdir --help
Использование: mkdir [КЛЮЧ]… КАТАЛОГ…
Создает КАТАЛОГ(и), если он ещё не существует.
Аргументы, обязательные для длинных ключей, обязательны
и для коротких.
-m, --mode=РЕЖИМ установить права доступа к файлу
(как в chmod), а не a=rwx - umask
-p, --parents не выдавать ошибку, если существует,
создавать родительские каталоги,
если необходимо
-v, --verbose печатать сообщение о каждом созданном
каталогеНе все приложения поддерживают данный аргумент, но большинство хороших поддерживают
Много приложений предоставляют информацию о своём использовании в формате
руководства в системе man
Для получения руководства с названием program достаточно запустить приложение
и в качестве аргумента передать ему program
man programЕсли руководство будет найдено, то оно будет отображено с помощью приложения для
просмотра текстовых документов less
При появлении текстовых терминалов встала задача: просмотреть большой текстовый документ при наличии всего 24 строк в выводе
Решение: использовать приложение-пейджер для постраничного просмотра текстовых файлов
Классическая реализация приложения — more
Интерактивные приложения взаимодействуют с эмулятором терминала, чтобы
less
#
less — интерактивное приложение для просмотра текстов, less is more
less data.txtПриложение после запуска продолжает работать, предоставляя возможности по навигации с текстом
Поддерживаемые горячие клавиши:
Page UP, b подняться на страницу вверхPage Down, space, d опуститься на страницу внизСтрелка ввех подняться на одну строкуСтрелка вниз опуститься на одну строкуG перейти к концу текстового файла1G или g перейти к началу файла/СТРОКА начать поиск вниз до следующего вхождения строки СТРОКАn повторить поиск и переходh показать поискq завершить работу lessПосмотрим на руководство по приложению cp
$ man cpCP(1) User Commands
NAME
cp - copy files and directories
SYNOPSIS
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
DESCRIPTION
Copy SOURCE to DEST, or multiple SOURCE(s) to
DIRECTORY.
-a, --archive
same as -dR --preserve=allman manСИНТАКСИС
man [параметры man] [[раздел] страница ...] ...Просмотр информации об использовании приложения passwd
$ man 1 passwd
passwd(1) Пользовательские команды
НАЗВАНИЕ
passwd - изменяет пароль пользователяПросмотр информации о конфигурационном файле passwd
$ man 5 passwd
passwd(5) Форматы файлов
НАЗВАНИЕ
passwd - файл паролейСуществует множество страниц с разными названиями, которые могут не совпадать с названием приложения
Для поиска руководств можно воспользоваться:
apropos: apropos passwdman: man -k passwdchpasswd (8) - обновляет пароли в пакетном режиме
gpasswd (1) - administer /etc/group and /etc/gshadow
passwd (1) - изменяет пароль пользователяРуководства справочной системы man находятся в файловой системе
Каталоги, в которых происходит их поиск, описаны в конфигурационном файле /etc/man_db.conf
MANDATORY_MANPATH /usr/man
MANDATORY_MANPATH /usr/share/man
MANDATORY_MANPATH /usr/local/share/manМножество приложений помимо установки могут поставлять документацию в любом
удобном для них формате. Обычно документация располагается в каталоге
/usr/share/doc/, в подкаталоге с именем приложения
Для простых приложений там может располагаться текстовый файл README, который
можно посмотреть с помощью less
Некоторые файлы могут иметь расширение .gz, что обозначает что они
заархивированы. less тоже может их открыть и просмотреть, если они текстовые
Если пользователь хочет запустить приложение, то существуют 2 способа:
При указании пути необходимо явно сообщить, что мы указали путь:
/usr/bin/mkdir — абсолютный путь, первый символ /./app.py — относительный путь, первый символ .Вы не можете использовать относительные пути без указания локального имени каталога
Если не задан символ / или ., то будет происходить поиск по директориям
Переменная окружения PATH определяет список директорий, в котором Bash ищет
исполняемые файлы, которые мы можем вызвать
Для просмотра текущего значения переменной PATH можно воспользоваться
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/gamesПути в списке разделены двоеточием
Поиск исполняемых файлов происходит в порядке указания каталогов:
/usr/local/bin/usr/bin/bin/usr/gamesЕсли в каталогах /usr/bin и /bin есть исполняемые файлы с одинаковыми
именами, то будет запущен файл из /usr/bin, так как в списке он идёт раньше
/bin
/usr/bin/application/bin/applicationЕсли пользователь запустит приложение application в командном интерфейсе, то
будет запущен исполняемый файл /usr/bin/application, а не /bin/application
Для определения абсолютного пути к исполняемому файлу используйте which
$ man which
NAME
which - locate a command
SYNOPSIS
which [-a] filename ...Троеточие обозначает, что команде можно передать несколько названий приложений одновременно
$ which mkdir which
/usr/bin/mkdir
/usr/bin/which