В Linux файлы и каталоги расположены в иерархической структуре, которая начинается с корневого каталога (/). При работе с объектами файловой системы их местоположение можно указывать двумя способами: с помощью абсолютного или относительного пути. Чтобы стать более уверенным пользователем Linux, важно понимать разницу между ними.
В этой статье мы рассмотрим основные отличия между абсолютным и относительным путем к файлам и каталогам в Linux.
Содержание:
Что такое абсолютный путь в Linux
Абсолютный путь указывает полное расположение файла или каталога, начиная с корневого каталога /. Он всегда начинается со знака / и не зависит от того, где пользователь находится в данный момент в файловой системе. Благодаря этому абсолютные пути считаются наиболее надежным способом указания местоположения объектов:
- Независимо от текущего рабочего каталога, абсолютный путь всегда указывает на один и тот же ресурс. Например,
/etc/passwdссылается на один и тот же файл, будь Вы в папке/home/user/или в/var/log/. - Так как абсолютные пути не зависят от местоположения пользователя, они широко применяются в конфигурационных файлах, системных службах и скриптах, запускаемых автоматически.
- Доступ ко многим важным файлам Linux (например,
/etc/hostsили/var/log/syslog) осуществляется именно через абсолютные пути — это гарантирует корректность работы команд в непредсказуемых средах.
Предположим, мы находимся в домашнем каталоге пользователя /home/user. Нам нужно просмотреть содержимое системного файла passwd, который находится в каталоге /etc. Поскольку файл находится в другой части файловой системы, удобнее использовать абсолютный путь к нему:
Аналогично, абсолютные пути применяются для перемещения файла из одного каталога в другой. Например:
Читайте также: Команда mmv в Linux с примерами.
Абсолютные пути особенно часто используются, когда нужно перейти в каталог, находящийся в другой части файловой системы, вне зависимости от текущей рабочей папки.
Допустим, мы находимся в домашнем каталоге пользователя /home/user, но хотим перейти в системную директорию /etc. Поскольку /etc находится в другой ветке файловой системы, следует использовать абсолютный путь:
Что такое относительный путь в Linux
Относительный путь в Linux указывает расположение файла или каталога относительно текущего рабочего каталога. В отличие от абсолютного, он не начинается с / и зависит от того, где вы находитесь в данный момент. Ключевые особенности относительных путей:
- Путь строится от текущего каталога. Например,
Documents/report.txtбудет означать разные файлы, если Вы находитесь в/home/userили/var/log. - Нет необходимости указывать полный путь от корня, если Вы уже находитесь в нужной ветке каталогов.
- Особенно удобен для проектов и скриптов, которые расположены внутри одной структуры папок.
Допустим, в текущем каталоге есть папка Music. Чтобы перейти в нее, не обязательно писать абсолютный путь — можно воспользоваться относительным:
В текущей рабочей директории есть папка Documents, а в ней — файл file3.txt. Поскольку этот документ находится в той же ветке файловой системы, что и текущая директория, можно использовать относительный путь для доступа к нему:
Читайте также: 13 примеров команды cat для начинающих в Linux.
Однако, если файл или папка расположены в разных директориях, не связанных между собой, использовать относительный путь нельзя. Иначе команда может обратиться к другому объекту файловой системы или вызвать ошибку.
Например, если мы находимся в домашнем каталоге /home/user и хотим перейти в системный каталог /etc, попробуем применить относительный путь:
Как видно на скриншоте, команда выдает ошибку, так как прямого доступа к каталогу /etc из текущей директории не существует.
Вывод
Мы рассказали, в чем разница между абсолютным и относительным путем в операционной системе Linux. Надеемся, что наша статья была полезной для Вас!
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
































