Найти в Дзене
Вороний блог | Linux и IT

Командная строка Linux, навигация в системе и просмотр директорий: команды pwd, ls, cd

Оглавление

Приветствую!

Это второй пост из цикла, посвященного работе в командной строке Linux. Сегодня мы рассмотрим базовую навигацию по файловой системе и просмотр содержимого каталогов.

Обязательно прочитайте первый пост:

Практические примеры из постов данного цикла выполнялись в среде дистрибутива Linux Mint 21.

Получение справки о командах

Получить исчерпывающую справку о командах можно прямо в терминале Linux.

Для получения краткой справки по команде и узнать список её ключей, зачастую с описанием, можно воспользоваться ключом –help, который существует у многих команд.

Например:

ls --help

Более развернутую справку по какой-либо команде всегда можно получить с помощью отдельной утилиты man. Просто выполните man <имя_программы>

Например:

man ls

Для навигации при просмотре man страниц воспользуйтесь стрелочками вверх, вниз на клавиатуре для построчного просмотра.

Отмечу, что в описании синтаксиса команд в квадратных скобках обозначаются необязательные параметры команды.

Список команд

Итак, сегодня наш арсенал инструментов пополнится следующими командами:

-2

Эти команды относятся к числу наиболее часто используемых в Linux. Они
применяются для вывода адреса рабочего каталога, просмотра содержимого и перехода в другой каталог.

У каждой команды существует определенное количество параметров (ключей), которые определяют режим работы команды и ее функциональность. Ключи бывают двух типов: короткие и длинные. Они имеют, например такой вид:

  • Короткий: -h
  • Длинный: --help

Во многих командах оба таких ключа будут иметь одно и то же значение, но так бывает не всегда.

Теперь приступим к практике. Давайте рассмотрим по несколько примеров для каждой из команд из таблицы выше.

Начнём по порядку.

Команда pwd (print working directory) – вывод текущего рабочего каталога

Синтаксис:

pwd [ключи]

Команда имеет всего два ключа:

-3

Открываем терминал и выполняем эту команду без ключей:

-4

По умолчанию, при в ходе в систему мы попадаем в свой домашний каталог. В моём примере это /home/ivan что и показала нам команда pwd.

Обратите внимание, что путь начинается со слэша / который обозначает “корень” нашей файловой системы. Остальные слэши являются лишь разделителями между вложенными директориями и файлами.

В графическом файловом менеджере адрес домашней директории выглядит так:

-5

Также значение pwd каждый раз перезаписывается в переменную окружения (environment variables) $PWD. Посмотреть значение переменной в терминале можно так:

echo $PWD

Утилиту echo мы рассмотрим в следующем посте. Про переменные в будущем будет отдельный пост.

Команда ls (list) – просмотр содержимого каталога

Синтаксис:

ls [ключи] [каталог]

Часто используемые ключи:

-6

Если выполнить эту команду без ключей и аргументов, то программа выведет нам содержимое текущего рабочего каталога, который мы узнали с помощью pwd:

-7

Посмотрим, что будет если вывести содержимое в виде списка:

ls -l
-8

Добавим ключ -a⁣, чтобы увидеть скрытые файлы:

ls -la
-9

Видим, что в нашем домашнем каталоге много скрытых файлов. Подробнее разберем вывод предыдущей команды:

-10

Добавив команде ls ключ -h размер файлов отобразится в более удобном для человека формате:

-11

Команда cd (change directory) – переход в какой-либо каталог

Синтаксис:

cd [каталог]

Данная команда меняет текущей рабочий каталог на другой. При выполнении команды cd без аргументов мы попадём в наш домашний каталог.

Давайте для примера перейдём в “корень” нашей системы Linux Mint, затем проверим наш текущий рабочий каталог и выведем его содержимое:

cd /

pwd

ls -l

Вывод команды будет примерно таким:

-12

Прорубаемым перейти в каталог /usr и узнать его содержимое:

cd /usr

# или
cd ./usr

ls -la
-13

Тут стоит упомянуть, что в Linux существуют такие понятия, как абсолютный путь и относительный.

Абсолютные пути всегда начинаются с “корня” т.е символа слэша /

Относительные пути подразумевают указание пути относительно ткущей или родительской директории, которые обозначаются:

-14

Сейчас мы находимся в /usr. Попробуем перейти в каталог на уровень выше выполнив:

cd ..

pwd
-15

И видим, что мы вернулись в “корень” нашей системы.

Попасть обратно в домашний каталог с помощью команды cd можно четырьмя способами:

  • выполнить команду без аргументов
  • указать полный путь
  • в качестве аргумента передать знак тильды ~ обозначающий домашний каталог пользователя в Linux
  • передать аргументом переменную окружения с адресом домашнего каталога – $HOME
cd

cd /home/ivan/

cd ~

cd $HOME

Завершающий слэш в пути обозначает, что типом последнего элемента в пути (например /home/ivan/) является директория. Во многих случаях его можно и не ставить.

Все эти команды будут иметь одинаковый эффект:

-16

Еще один трюк. Если передать команде cd в качестве аргумента минус - она вернет нас в предыдущий каталог и выведет его адрес:

cd -
-17

Послесловие

Сегодня мы научились перемещаться по файловой системе в командной строке, выводить наш рабочий каталог и просматривать содержимое каталогов.

В следующем посте мы, с учетом полученных сегодня знаний, подробно рассмотрим работу утилит: echo, cat, less с помощью которых можно выводить произвольный текст и смотреть содержимое файлов в терминале.

Спасибо, что читаете. Успехов в изучении Linux

Полезные источники

Предыдущие посты цикла

Мои ссылки: