Недавно я описывал команды для передвижения по директориям в терминале Линукс. Вот я и решился продолжить рассказ о командах в консоли. Так с передвижениями вроде бы разобрались. Теперь я хочу немного более подробно рассмотреть какие пути к директориям, в консоли бывают.
Давайте для начала рассмотрим самые известные для всех, пути к нашим файлам и директориям, а именно абсолютные пути. Откройте терминал и выведите команду которая выводит полный путь к вашей домашней директории. Я о этой команде рассказывал недавно, вот здесь. Вводим pwd:
:~$ pwd
/home/dante
Как видите данная консольная команда вывела полный путь начиная с корневой директории. Такие передвижения по директориям я как раз и описывал недавно, это передвижение при помощи абсолютного пути. Но это не все возможности двигаться по категориям нашей операционной системы. В операционной системе Линукс, существует ещё возможность использования относительных путей.
Относительные пути в консоли, отсчитывают категории относительно той категории в которой вы находитесь. Их возможно использовать при помощи ".." двух точек, указанных перед папкой в которую мы хотим перейти. Давайте перейдём куда-нибудь в нашей операционной системе. Например в папку usr и осмотрим её содержимое командой ls.
dante@dante-1001PXD:~$ cd /usr
dante@dante-1001PXD:/usr$ ls
bin games include lib local sbin share src
dante@dante-1001PXD:/usr$
Вот мы видим список доступных директорий. Давайте теперь перейдём в директорию «share».
dante@dante-1001PXD:~$ cd /usr/share
dante@dante-1001PXD:/usr/share$
Так, сейчас мы находимся в категории /usr/share как мы видим. Давайте сейчас перейдём в категорию которая находится на одном уровне с той категорией, в которой мы находимся. Например в категорию «local». Это можно сделать при помощи абсолютного пути вот так.
dante@dante-1001PXD:~$ cd /usr/local
dante@dante-1001PXD:/usr/local$
Но сейчас давайте будем использовать не абсолютный путь, а относительный к нашей директории, путь относительно категории в которую мы перешли. То есть относительно категории «share», итак мы находимся вот здесь.
dante@dante-1001PXD:/usr/share$ pwd
/usr/share
dante@dante-1001PXD:/usr/share$
Как видите я вывел для вас в консоли, полный путь к тому месту где вы находитесь. Мы знаем что директория «local» находится на одном уровне с директорией «share» и мы можем использовать команду, вот такого вида.
dante@dante-1001PXD:/usr/share$ cd ../local
dante@dante-1001PXD:/usr/local$
Как видите команда запроса стала намного проще. Но это только если вы помните директории, которые находятся на одном уровне с вашей рабочей директорией, а я далеко не всегда в консоли помню другие директории.
Для того чтобы перейти в следующую директорию, достаточно в консоли ввести команду относительно Вашей рабочей директории. Для этих целей используйте вместо ".." двух точек, "." одну точку и Вы будете двигаться относительно той директории в консоли, в которой находитесь на данный момент. Давайте вернёмся в директорию /usr и осмотрим ещё раз что там находится.
dante@dante-1001PXD:/usr/local$ cd /usr
dante@dante-1001PXD:/usr$ ls
bin games include lib local sbin share src
dante@dante-1001PXD:/usr$
Давайте теперь перейдём в директорию «share» относительно той директории в которой мы сейчас находимся. Для этого введите в консоли
dante@dante-1001PXD:/usr$ cd ./local
dante@dante-1001PXD:/usr/local$
Как видите использование относительных путей, способно сильно сократить команды которые Вы вводите в консоли Линукс.
Комментарии
Отправить комментарий