Навигация по файловой системе в Linux

CompTIABeginner
Практиковаться сейчас

Введение

В ходе этой лабораторной работы вы получите фундаментальные навыки, необходимые для навигации по файловой системе Linux через командную строку. Вы познакомитесь с такими важными командами, как pwd для вывода текущего рабочего каталога, cd для смены директории и ls для просмотра содержимого папок. Эти команды составляют основу взаимодействия с любой системой на базе Linux.

В процессе выполнения упражнений вы попрактикуетесь в перемещении между каталогами, используя как абсолютные, так и относительные пути. Вы также изучите полезные сокращения, такие как символ тильды (~) для быстрого доступа к домашнему каталогу, и научитесь применять опции команд (например, ls -l и ls -a) для просмотра подробных свойств файлов и скрытых объектов. К концу занятия у вас будет прочный фундамент для эффективной работы в среде терминала Linux.

Определение домашнего каталога с помощью pwd и cd

На этом этапе вы изучите две базовые команды для навигации по файловой системе Linux: pwd и cd. Мы начнем с определения вашего текущего местоположения, а затем научимся переходить в домашний каталог.

Команда pwd (print working directory) сообщает, где именно в иерархии файловой системы вы находитесь в данный момент. При запуске новой сессии терминала в этой лабораторной работе вы автоматически попадаете в специальную директорию под названием project. Давайте это проверим.

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

pwd

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

/home/labex/project

Теперь перейдем к команде cd (change directory). Она позволяет перемещаться между папками. У каждого пользователя в системе Linux есть специальный «домашний» каталог — место по умолчанию для хранения личных файлов. Для вашего пользователя labex домашний каталог находится по адресу /home/labex.

Удобный способ мгновенно попасть в домашний каталог из любого места — ввести команду cd без аргументов. Попробуйте сделать это сейчас:

cd

Обычно эта команда не выводит никакого текста, но она незаметно меняет ваше местоположение. Чтобы подтвердить переход, снова воспользуйтесь командой pwd:

pwd

Теперь в выводе будет указан путь к вашему домашнему каталогу:

/home/labex

В рамках этой лабораторной работы мы будем работать внутри каталога ~/project. Давайте вернемся в него. Символ тильды (~) — это специальное сокращение, обозначающее ваш домашний каталог. Таким образом, путь ~/project начинается от вашего домашнего каталога и указывает на папку project внутри него.

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

cd ~/project

Наконец, запустите pwd еще раз, чтобы убедиться, что вы вернулись в исходную точку для следующего шага.

pwd

Вы должны увидеть знакомый путь, подтверждающий ваше возвращение:

/home/labex/project

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

Смена директорий с помощью абсолютных путей и тильды

На этом этапе вы расширите свои навыки навигации, используя абсолютные пути и подстановку тильды. Эти мощные инструменты позволяют переместиться в любую директорию из любой точки файловой системы одной командой.

Абсолютный путь — это путь, который начинается от корневого каталога, обозначаемого одиночным прямым слешем (/). Он указывает полное и точное местоположение директории. Давайте воспользуемся абсолютным путем, чтобы перейти в каталог /etc, где хранятся системные конфигурационные файлы.

Находясь в текущем каталоге (~/project), выполните следующую команду:

cd /etc

Чтобы подтвердить успешную смену директории, используйте команду pwd:

pwd

Вывод должен показать новое местоположение:

/etc

Теперь разберем подстановку тильды. Символ тильды (~) — это специальный ярлык для вашего домашнего каталога. Как вы видели на предыдущем шаге, команда cd ~ эквивалентна cd /home/labex. Тильду также можно использовать для перехода в домашние каталоги других пользователей, но для этого требуются соответствующие права доступа.

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

cd ~

Проверьте местоположение с помощью pwd:

pwd

Вывод будет следующим:

/home/labex

Наконец, вернемся в нашу рабочую директорию ~/project, используя тильду. Это самый распространенный и эффективный способ быстро вернуться к файлам вашего проекта.

cd ~/project

Запустите pwd в последний раз, чтобы убедиться, что вы находитесь в нужном месте перед следующим шагом.

pwd

Вы должны увидеть привычный результат:

/home/labex/project

Теперь вы умеете менять директории как с помощью абсолютных путей, так и через универсальную тильду, что значительно повышает эффективность вашей работы в командной строке.

Просмотр содержимого каталога с помощью ls и ls -a

На этом этапе вы научитесь просматривать содержимое директории с помощью команды ls. Вы также узнаете, как увидеть скрытые файлы, которые играют важную роль в файловой системе Linux.

Для начала убедитесь, что вы находитесь в каталоге ~/project. Давайте создадим пару файлов, чтобы нам было что просматривать. Мы воспользуемся командой touch, которая создает пустой файл, если он еще не существует.

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

touch sample.txt
touch .hidden_file

Теперь выведите список содержимого текущего каталога с помощью базовой команды ls:

ls

Вы увидите, что в списке отображается только обычный файл:

sample.txt

Обратите внимание, что .hidden_file не отображается. Это происходит потому, что по умолчанию ls не показывает файлы или каталоги, названия которых начинаются с точки (.). Они называются «скрытыми» файлами или «дотфайлами» (dotfiles) и часто используются для хранения пользовательских настроек.

Чтобы увидеть все файлы, включая скрытые, необходимо добавить опцию -a (или --all) к команде ls. Попробуем:

ls -a

На этот раз в выводе отобразится всё содержимое каталога:

.  ..  .hidden_file  sample.txt

Теперь результат изменился. Вы видите наш .hidden_file, а также две специальные записи: . (ссылка на текущий каталог) и .. (ссылка на родительский каталог, уровнем выше). Подробнее об использовании .. для навигации мы поговорим позже.

Сравнив два этих вывода, вы наглядно увидите, что ls -a предоставляет полный список содержимого, что критически важно, когда вам нужно найти конфигурационные файлы или другие скрытые элементы системы.

Просмотр подробных свойств файлов с помощью команды ls -l

На этом этапе вы научитесь получать более детальную информацию о файлах, помимо их имен. У команды ls есть мощная опция -l, которая выводит данные в «длинном формате», показывая такие свойства, как права доступа, владельцы, размер и дата изменения.

Убедитесь, что вы все еще находитесь в каталоге ~/project. Теперь выполните команду ls с опцией -l, чтобы увидеть подробную информацию о видимых файлах:

ls -l

Вывод будет гораздо информативнее. Строка для файла sample.txt будет выглядеть примерно так:

total 0
-rw-r--r-- 1 labex labex 0 Oct 26 10:30 sample.txt

Разберем, что означает каждая часть этой строки:

  • -rw-r--r--: Права доступа к файлу. Первый символ (-) указывает на то, что это обычный файл. Следующие символы определяют, кто может читать, записывать или запускать файл.
  • 1: Количество жестких ссылок на файл.
  • labex: Имя пользователя-владельца файла.
  • labex: Имя группы-владельца файла.
  • 0: Размер файла в байтах. Поскольку мы создали его через touch, он пуст.
  • Oct 26 10:30: Дата и время последнего изменения файла.
  • sample.txt: Имя файла.

Как и в случае с опцией -a, вы можете комбинировать её с -l, чтобы увидеть подробную информацию обо всех файлах, включая скрытые. Опции можно записывать как ls -l -a, ls -la или ls -al. Результат будет одинаковым.

Давайте попробуем. Выполните команду для получения подробного списка всех файлов:

ls -la

Теперь в список включены скрытый файл и специальные директории . и ..:

total 8
drwxr-xr-x 2 labex labex 4096 Oct 26 10:35 .
drwxr-xr-x 3 labex labex 4096 Oct 26 10:20 ..
-rw-r--r-- 1 labex labex    0 Oct 26 10:30 .hidden_file
-rw-r--r-- 1 labex labex    0 Oct 26 10:30 sample.txt

Заметьте, что для . и .. строка прав доступа начинается с буквы d. Это указывает на то, что данные объекты являются каталогами (directories), а не обычными файлами. Использование ls -la — одна из самых частых операций для получения полного обзора содержимого папки и его характеристик.

Навигация с помощью относительных путей (..) и возвращение домой

На заключительном этапе вы научитесь перемещаться, используя относительные пути. В отличие от абсолютного пути, который всегда начинается от корня (/), относительный путь отсчитывается от вашего текущего рабочего каталога. Это зачастую более быстрый способ перемещения между соседними папками. Главным инструментом здесь является специальное обозначение .., которое всегда указывает на родительский каталог (уровнем выше).

Сначала убедитесь, что вы находитесь в каталоге ~/project. Проверьте это с помощью pwd.

pwd

Вывод должен быть /home/labex/project.

Теперь поднимемся в родительский каталог, которым является /home/labex. Для этого используйте команду cd с аргументом ..:

cd ..

Эта команда приказывает оболочке перейти на уровень выше. Подтвердите новое местоположение:

pwd

Вы увидите, что теперь находитесь в своем домашнем каталоге:

/home/labex

Вы можете выстраивать цепочки из .., чтобы подняться сразу на несколько уровней. Например, если вы находитесь в /home/labex, команда cd ../.. перенесет вас в корневой каталог (/).

Напоследок закрепим самый быстрый способ вернуться домой из любой точки системы. Как вы узнали на первом шаге, простой ввод команды cd без аргументов всегда возвращает вас в ваш личный домашний каталог.

Давайте сначала перейдем в каталог /etc:

cd /etc

А теперь из /etc вернемся домой одной короткой командой:

cd

Проверьте свое местоположение в последний раз.

pwd

Вывод подтверждает, что вы снова дома:

/home/labex

Поздравляем! Вы освоили важнейшие команды оболочки для навигации по файловой системе Linux: pwd, cd с абсолютными и относительными путями, а также ls для просмотра содержимого.

Резюме

В этой лабораторной работе вы изучили основные команды оболочки для навигации по файловой системе Linux. Вы научились использовать pwd для определения текущего рабочего каталога и cd для смены директорий. Вы попрактиковались в перемещении с использованием абсолютных путей, относительных путей (таких как .. для перехода на уровень выше) и удобных сокращений, например тильды (~) для быстрого доступа к домашнему каталогу. Вы также узнали, что выполнение cd без аргументов — это кратчайший путь домой.

Кроме того, вы изучили способы просмотра и инспекции содержимого каталогов с помощью команды ls. Вы использовали флаг -a для отображения всех файлов, включая скрытые, и флаг -l для вывода данных в подробном длинном формате. Этот детальный вид предоставил важную информацию о свойствах файлов, таких как права доступа, владельцы, размер и даты изменения, что значительно расширило ваши возможности по эффективному управлению файлами.