Приветствую!
Это второй пост из цикла, посвященного работе в командной строке Linux. Сегодня мы рассмотрим базовую навигацию по файловой системе и просмотр содержимого каталогов.
Обязательно прочитайте первый пост:
Практические примеры из постов данного цикла выполнялись в среде дистрибутива Linux Mint 21.
Получение справки о командах
Получить исчерпывающую справку о командах можно прямо в терминале Linux.
Для получения краткой справки по команде и узнать список её ключей, зачастую с описанием, можно воспользоваться ключом –help, который существует у многих команд.
Например:
ls --help
Более развернутую справку по какой-либо команде всегда можно получить с помощью отдельной утилиты man. Просто выполните man <имя_программы>
Например:
man ls
Для навигации при просмотре man страниц воспользуйтесь стрелочками вверх, вниз на клавиатуре для построчного просмотра.
Отмечу, что в описании синтаксиса команд в квадратных скобках обозначаются необязательные параметры команды.
Список команд
Итак, сегодня наш арсенал инструментов пополнится следующими командами:
Эти команды относятся к числу наиболее часто используемых в Linux. Они
применяются для вывода адреса рабочего каталога, просмотра содержимого и перехода в другой каталог.
У каждой команды существует определенное количество параметров (ключей), которые определяют режим работы команды и ее функциональность. Ключи бывают двух типов: короткие и длинные. Они имеют, например такой вид:
- Короткий: -h
- Длинный: --help
Во многих командах оба таких ключа будут иметь одно и то же значение, но так бывает не всегда.
Теперь приступим к практике. Давайте рассмотрим по несколько примеров для каждой из команд из таблицы выше.
Начнём по порядку.
Команда pwd (print working directory) – вывод текущего рабочего каталога
Синтаксис:
pwd [ключи]
Команда имеет всего два ключа:
Открываем терминал и выполняем эту команду без ключей:
По умолчанию, при в ходе в систему мы попадаем в свой домашний каталог. В моём примере это /home/ivan что и показала нам команда pwd.
Обратите внимание, что путь начинается со слэша / который обозначает “корень” нашей файловой системы. Остальные слэши являются лишь разделителями между вложенными директориями и файлами.
В графическом файловом менеджере адрес домашней директории выглядит так:
Также значение pwd каждый раз перезаписывается в переменную окружения (environment variables) $PWD. Посмотреть значение переменной в терминале можно так:
echo $PWD
Утилиту echo мы рассмотрим в следующем посте. Про переменные в будущем будет отдельный пост.
Команда ls (list) – просмотр содержимого каталога
Синтаксис:
ls [ключи] [каталог]
Часто используемые ключи:
Если выполнить эту команду без ключей и аргументов, то программа выведет нам содержимое текущего рабочего каталога, который мы узнали с помощью pwd:
Посмотрим, что будет если вывести содержимое в виде списка:
ls -l
Добавим ключ -a, чтобы увидеть скрытые файлы:
ls -la
Видим, что в нашем домашнем каталоге много скрытых файлов. Подробнее разберем вывод предыдущей команды:
Добавив команде ls ключ -h размер файлов отобразится в более удобном для человека формате:
Команда cd (change directory) – переход в какой-либо каталог
Синтаксис:
cd [каталог]
Данная команда меняет текущей рабочий каталог на другой. При выполнении команды cd без аргументов мы попадём в наш домашний каталог.
Давайте для примера перейдём в “корень” нашей системы Linux Mint, затем проверим наш текущий рабочий каталог и выведем его содержимое:
cd /
pwd
ls -l
Вывод команды будет примерно таким:
Прорубаемым перейти в каталог /usr и узнать его содержимое:
cd /usr
# или
cd ./usr
ls -la
Тут стоит упомянуть, что в Linux существуют такие понятия, как абсолютный путь и относительный.
Абсолютные пути всегда начинаются с “корня” т.е символа слэша /
Относительные пути подразумевают указание пути относительно ткущей или родительской директории, которые обозначаются:
Сейчас мы находимся в /usr. Попробуем перейти в каталог на уровень выше выполнив:
cd ..
pwd
И видим, что мы вернулись в “корень” нашей системы.
Попасть обратно в домашний каталог с помощью команды cd можно четырьмя способами:
- выполнить команду без аргументов
- указать полный путь
- в качестве аргумента передать знак тильды ~ обозначающий домашний каталог пользователя в Linux
- передать аргументом переменную окружения с адресом домашнего каталога – $HOME
cd
cd /home/ivan/
cd ~
cd $HOME
Завершающий слэш в пути обозначает, что типом последнего элемента в пути (например /home/ivan/) является директория. Во многих случаях его можно и не ставить.
Все эти команды будут иметь одинаковый эффект:
Еще один трюк. Если передать команде cd в качестве аргумента минус - она вернет нас в предыдущий каталог и выведет его адрес:
cd -
Послесловие
Сегодня мы научились перемещаться по файловой системе в командной строке, выводить наш рабочий каталог и просматривать содержимое каталогов.
В следующем посте мы, с учетом полученных сегодня знаний, подробно рассмотрим работу утилит: echo, cat, less с помощью которых можно выводить произвольный текст и смотреть содержимое файлов в терминале.
Спасибо, что читаете. Успехов в изучении Linux
Полезные источники
- Мануал команды pwd – OpenNET
- Мануал команды ls – OpenNET
- Мануал команды cd – OpenNET
Предыдущие посты цикла
Мои ссылки:
- Мой основной сайт - r4ven.me
- Мой телеграм - t.me/r4ven_me