Linux. Основы командной строки. Часть 2-ая.
Команды обычно сопровождаются одним или несколькими параметрами, которые изменяют поведение команды, а так же одним или несколькими аргументами, на которые воздействует команда.
Большинство команд выглядят примерно так:
команда -параметр(ы) аргумент(ы)
Возьмем для примера команду ls.
Команда ls имеет огромное число допустимых параметров, наиболее популярные:
Большинство команд используют параметры, состоящие из одного символа, например: параметр -l. Но многие команды поддерживают параметры с длинными именами, состоящие из слова, которым предшествуют 2 дефиса.
Кроме того, многие команды позволяют объединять вместе параметры с короткими именами.
Например, команде ls передаются 2 параметра: параметр l и параметр t:
Добавим параметр с длинным именем --reverse:
ls -lt --reverse
Параметр -l выводит результаты с использованием длинного формата. То есть формат предусматривает вывод большого количества полезной информации.
Вывод: содержимого каталога /usr/games в системе Ubuntu:
ls /usr/games -l Вывод: итого 20 -rwxr-xr-x 1 root root 299 фев 18 2021 gamemoderun -rwxr-xr-x 1 root root 14488 мар 23 2022 gamemode-simulate-game
Рассмотрим различные поля для первого файла и их назначение:
-rwxr-xr-x
- Права доступа к файлу. Первый символ указывает тип файла, например, символом дефиса обозначаются обычные файлы, а символом d — каталоги. Следующие 3 символа показывают права доступа для владельца файла, следующие три — для членов группы, которым принадлежит файл, и последние три — для всех остальных.
1
root
root
299
фев 18 2021
gamemoderun
Команда file дает возможность определять тип содержимого файла. Имена файлов в Linux не обязаны отражать тип содержимого файлов.
Например, увидев файл picture.jpg, можно подумать, что он содержит изображение в формате JPEG, но в Linux такие догадки могут не оправдываться.
Вызвать команду file можно так:
file [название файла]
file picture.jpg Вывод: picture.jpg: JPEG image data, JFIF standard 1.01
Команда less — программа для просмотра текстовых файлов.
После запуска программа less позволяет прокручивать текстовый файл взад и вперед.
Команда less используется так:
less [имя файла]
Например, просмотреть содержимое файла со всеми известными системе учетными записями пользователей можно с помощью следующей команды:
less /etc/passwd
После запуска программа less выведет содержимое файла. Если файл занимает больше 1-й страницы, его можно прокручивать вверх и вниз.
Некоторые команды программы less:
- Page Up — прокрутка к началу на 1-ну страницу,
Page Down — к концу на 1-ну страницу. - Стрелка вверх — прокрутка к началу на 1-ну строку,
Стрелка вниз — к концу на 1-ну строку. - G — переход в конец текстового файла,
g — в начало текстового файла.
Давайте посмотрим содержимое каталога /usr/lib.
ls /usr/lib -l Вывод: .. lrwxrwxrwx 1 root root 15 июл 8 2020 libchm.so.1 -> libchm.so.1.0.0 ..
Обратили внимание на первую букву l и на присутствие двух имен файлов в конце?
Это специальный файл, который называется символической ссылкой (мягкой ссылкой или симплинком). В Linux можно дать одному и тому же файлу несколько имен.
Запись выше соответствует символической ссылке с именем libchm.so.1, указывающей на файл разделяемой библиотеки с именем libchm.so.1.0.0. Это означает, что программа ищущая libchm.so.1, фактически получит файл libchm.so.1.0.0.
Когда создается символическая ссылка в действительности, создается файл особого типа, содержащий текстовый указатель на файл или каталог. Можно сказать, они действуют наподобие ярлыков в Windows.
Файл, на который указывает символическая ссылка и сама символическая ссылка почти неотличимы друг от друга.
Например, если попытаться что-то записать в символическую ссылку запись будет выполнена в файл, на который она указывает.
Однако при удалении символической ссылки удаляется только символическая ссылка, но не файл. Если удалить файл до того, как будет удалена символическая ссылка, ссылка останется на месте, но будет указывать в никуда. Такие ссылки называются битые. Команда ls выделяет битые ссылки цветом, например, красным.
Элементом символической ссылкой может быть файл или каталог.
Для того, чтобы создать символическую ссылку воспользуйтесь командой ln и параметром -s:
ln -s [элемент] [ссылка]
Жесткие ссылки — это первоначальный способ создания ссылок в Linux; символические ссылки — более позднее изобретение.
По умолчанию каждый файл имеет одну жесткую ссылку, определяющую его имя. Создавая жесткую ссылку, мы создаем дополнительную запись в каталоге для файла. Жесткие ссылки имеют 2 важных ограничения:
- Жесткая ссылка не может указывать на файл за пределами собственной файловой системы. Это означает, что жесткая ссылка не может указывать на файл, находящийся в другом разделе диска.
- Жесткая ссылка не может указывать на каталог.
Жесткая ссылка неотличима от самого файла. В отличие от символических ссылок, при выводе списка с содержимым каталогов жесткие ссылки никак не выделяются. При удалении жесткой ссылки, удаляется только сама ссылка, а файл остается на месте (то есть пространство, занимаемое файлом не освобождается), пока не будут удалены все жесткие ссылки на файл.
Для того, чтобы создать символическую ссылку воспользуйтесь командой ln без параметра:
ln [файл] [ссылка]
telegram — https://t.me/tenlapa