KirMol Wiki

Добро пожаловать в KirMol Wiki

Инструменты пользователя

Инструменты сайта


linux:the_difference_between_the_absolute_and_relative_path

Это старая версия документа!


Разница между абсолютным и относительным путем


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

Что такое абсолютный путь

Абсолютный путь указывает полное расположение файла или каталога, начиная с корневого каталога /. Он всегда начинается со знака / и не зависит от того, где пользователь находится в данный момент в файловой системе. Благодаря этому абсолютные пути считаются наиболее надежным способом указания местоположения объектов:

  • Независимо от текущего рабочего каталога, абсолютный путь всегда указывает на один и тот же ресурс. Например, /etc/passwd ссылается на один и тот же файл, будь Вы в папке /home/kirill или в /var/log.
  • Так как абсолютные пути не зависят от местоположения пользователя, они широко применяются в конфигурационных файлах, системных службах и скриптах, запускаемых автоматически.
  • Доступ ко многим важным файлам Linux (например, /etc/hosts или /var/log/syslog) осуществляется именно через абсолютные пути - это гарантирует корректность работы команд в непредсказуемых средах.

Предположим, мы находимся в домашнем каталоге пользователя /home/kirill. Нам нужно просмотреть содержимое системного файла passwd, который находится в каталоге /etc. Поскольку файл находится в другой части файловой системы, удобнее использовать абсолютный путь к нему:

nano /etc/passwd

Вывод в терминале:

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

mv /home/kirill/file.txt /etc

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

Допустим, мы находимся в домашнем каталоге пользователя /home/kirill, но хотим перейти в системный каталог /etc. Поскольку /etc находится в другой ветке файловой системы, следует использовать абсолютный путь:

cd /etc

Вывод в терминале:

kirill@NEO-M136:~$ cd /etc
kirill@NEO-M136:/etc$
linux/the_difference_between_the_absolute_and_relative_path.1789451719.txt.gz · Последнее изменение: Кирилл Молчанов