Как сменить директорию в linux

Команда cd в Linux (Изменить каталог)

Команда cd («изменить каталог») используется для изменения текущего рабочего каталога в Linux и других Unix-подобных операционных системах. Это одна из самых основных и часто используемых команд при работе в терминале Linux.

Текущий рабочий каталог — это каталог (папка), в котором в данный момент работает пользователь. Каждый раз, когда вы взаимодействуете с командной строкой, вы работаете в каталоге.

В этом руководстве мы покажем вам, как использовать команду cd для навигации по дереву каталогов вашей системы.

cd Command

cd — это встроенная оболочка, и ее поведение может немного отличаться от оболочки к оболочке. Он использует переменные среды оболочки для определения необходимой информации для его выполнения.

Мы рассмотрим встроенную в Bash версию cd .

Синтаксис команды cd следующий:

Команда принимает только две опции, которые используются редко.

  • −L , переходить по символическим ссылкам . По умолчанию cd ведет себя так, как если бы указана опция -L .
  • −P , не переходите по символическим ссылкам. Другими словами, когда эта опция указана, и вы пытаетесь перейти к символической ссылке, которая указывает на каталог, cd перейдет в каталог.

В простейшей форме, при использовании без аргументов, cd перенесет вас в ваш домашний каталог.

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

Чтобы переключиться в каталог, у вас должны быть разрешения на выполнение для этого каталога.

Команда pwd позволяет узнать, в каком каталоге вы сейчас находитесь.

Абсолютные и относительные имена путей

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

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

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

Короче говоря, если путь начинается с косой черты ( / ), это абсолютный путь к каталогу.

Родительский каталог

В Unix-подобных операционных системах текущий рабочий каталог представлен одной точкой ( . ). Две точки ( .. ), одна за другой, представляют родительский каталог или, другими словами, каталог, расположенный непосредственно над текущим.

Читайте также:  Linux get cpu serial number

Если вы наберете cd . , вы перейдете в текущий каталог или, другими словами, команда ничего не сделает.

Предположим, вы находитесь в каталоге /usr/local/share , чтобы переключиться в каталог /usr/local (на один уровень выше текущего каталога), вы должны ввести:

Чтобы переместиться на два уровня вверх в каталог /usr (родительский родитель), вы можете запустить следующее:

Другой пример. Допустим, вы находитесь в каталоге /usr/local/share и хотите перейти в каталог /usr/local/src . Вы можете сделать это, набрав:

Перейти в предыдущий каталог

Чтобы вернуться в предыдущий рабочий каталог, передайте символ тире ( — ) в качестве аргумента команды cd:

Перейдите в домашний каталог

Чтобы перейти в домашний каталог, просто введите cd . Другой способ вернуться прямо в домашний каталог — использовать символ тильды ( ~ ), как показано ниже:

Например, если вы хотите перейти в каталог Downloads , который находится внутри вашего домашнего каталога, вы должны ввести:

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

Каталоги с пробелами в именах

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

Выводы

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

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Источник

Смена каталога с помощью cd

Смените каталог легко, если вы знаете где вы находитесь в данный момент (ваш текущий каталог) и куда вы хотите отправиться. Каталог, в который вы хотите попасть, выше или ниже текущего?

Чтобы сменить каталог, выполните команду cd . Команда в таком виде перенесёт вас в ваш домашний каталог; чтобы перейти в другой каталог необходимо указать путь к нему.

Вы можете использовать абсолютные или относительные пути. Абсолютные пути указываются от верхнего каталога / (называемого корнем) до указанного каталога; относительные пути указываются от текущего каталога, где бы он не находился. Дерево, показанное ниже, приведено в качестве примера, помогающего понять команду cd .

/ directory1 directory2 directory3

Если вы находитесь в directory3 и хотите перейти в directory1 , вы должны подняться в дереве каталогов выше.

находясь в каталоге directory3 , вы получите сообщение об ошибке, сообщающее о том, что нет такого каталога. Это происходит потому что, действительно, нет каталога directory1 в каталоге directory3 .

Чтобы подняться к каталогу directory1 , вы должны ввести:

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

Запомните, абсолютные пути перенесут вас В любой каталог ИЗ любого, а относительные пути, перенесут вас в каталоги, расположенные ниже текущего.

Читайте также:  Линукс создать образ флешки

Рисунок 10-3. Абсолютные пути указывают полный путь

Как отличить относительный путь от абсолютного?

Путь является абсолютным, если первый символ в нём / ; в противном случае это относительный путь.

Рисунок 10-4. Относительные пути указываются относительно текущего расположения

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

Команда cd .. указывает системе подняться на один уровень выше текущего каталога. Очевидно, команда cd ../.. перенесёт вас выше на два каталога.

Выполнив полностью команды этого примера, вы должны оказаться в каталоге /X11 , в котором хранятся конфигурационные файлы и каталоги, относящиеся к X Window System.

Взгляните на последнюю команду cd . Вы должны указать системе:

Подняться на один уровень выше к родительскому каталогу вашего домашнего каталога (вероятно, это будет /home )

Затем поднимитесь к родительскому каталога текущего (вероятно, вы окажетесь в / )

Затем спуститесь к каталогу etc

Наконец, перейдите в каталог /X11

Укажите абсолютный путь, чтобы быстрее перейти к каталогу /X11 . Введите:

Проверьте, где вы находитесь

Всегда проверяйте где вы находитесь, прежде чем указать относительный путь к каталогу или файлу. Однако если вы будете использовать абсолютные пути, вам не придётся задумывать об этом. Если вы не знаете, где вы находитесь, введите pwd .

Таблица 10-2. Параметры команды cd

КомандаФункция
cd переносит вас в ваш домашний каталог
cd ~ также переносит вас в ваш домашний каталог
cd / переносит вас в корневой каталог всей системы
cd /root переносит вас в домашний каталог пользователя root, или супер-пользователя, учётной записи, созданной во время установки системы
cd /home переносит вас в каталоге home, в котором находятся каталоги пользователей
cd .. переносит вас на один уровень выше
cd ~otheruser переносит вас в домашний каталог пользователя otheruser , если только пользователь otheruser дал вам соответствующие разрешения
cd /dir1/subdirfoo Вне зависимости от того, где вы находитесь, этот абсолютный путь перенесёт вас прямо в каталог subdirfoo , подкаталога, вложенного в dir1
cd ../../dir3/X11 Этот относительный путь сначала поднимет вас на два уровня выше, затем спустит в dir3, и наконец, в каталог X11.

Теперь когда вы начали понимать как менять каталоги, посмотрите, что произойдет, если вы перейдёте в домашний каталог пользователя root (суперпользователя). Введите:

Если вы не зарегистрированы под именем root, при обращении к этому каталогу вы получите сообщение «в доступе отказано».

Запрещая доступ к учётным записям root и других пользователей (или их домашним каталогам), ваша система Linux защищается от случайного или преднамеренного повреждения. Обратитесь к разделу Владение и разрешения

Чтобы перейти в каталог root, воспользуйтесь командой su . Введите эту последовательность команд:

Читайте также:  Global protect for linux

[newuser@localhost newuser]$ su Password: ваш пароль root [root@localhost newuser]# cd /root [root@localhost /root]#

Как только вы введете правильный пароль root, вы заметите, что ваше приглашение изменилось и теперь в нём отмечено ваше звание суперпользователя, в начале приглашения учётной записи root отображается символ «#» (как показано на Рисунке 10-5 ).

Рисунок 10-5. Превращение в root

Теперь, если вы выполните cd для перехода к домашнему каталогу пользователя root, вы получите к нему доступ.

Завершив работу под именем root, просто введите в приглашении exit .

[root@localhost /root]# exit exit [newuser@localhost newuser]$

Назад Начало Вперед
Определение вашего текущего каталога с помощью pwd Вверх Просмотр содержимого каталога с помощью ls

Источник

Команда cd

Команда cd в Linux

Текущая рабочая директория — это директория, в которой в текущий момент работает пользователь.

Чтобы была возможность перехода в директорию, пользователь должен обладать правами доступа на выполнение (execute) данной директории.

Для вывода текущей рабочей директории используется команда pwd.

Синтаксис

Опции

Разыменовывать символические ссылки. В данном случае, если осуществляется переход на символическую ссылку, которая указывает на директорию, то в результате команда cd изменит текущую рабочую директорию на директорию, указанную в качестве параметра (то есть ссылка будет разыменована).

Примеры использования команды cd

Переход в другую директорию

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

Или можно использовать следующую эквивалентную команду:

Перейдем в директорию /etc/apache2 . В данном случае используется абсолютный путь.

Перейдем в директорию, находящуюся в родительской директории (на уровень выше):

Переход в директорию, находящуюся на 2 уровня выше по дереву директорий:

Переход по символической ссылке

Предположим mylink1 это символическая ссылка на директорию mydir1

Если команде cd в качестве аргумента указать ссылку mylink1 , то текущая рабочая директория изменится на mylink1

$ pwd /home/pingvinus/mydir $ ls -l drwxr-xr-x 2 pingvinus pingvinus 4096 апр 25 18:45 mydir1 lrwxrwxrwx 1 pingvinus pingvinus 6 апр 25 18:45 mylink1 -> mydir1 $ cd mylink1 $ pwd /home/pingvinus/mydir/mylink1

Команда cd переход по символической ссылке

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

Предположим mylink1 это символическая ссылка на директорию mydir1

Воспользуемся опцией -P , чтобы при изменении директории, символическая ссылка была заменена на реальный путь, на который она указывает.

$ pwd /home/pingvinus/mydir $ ls -l drwxr-xr-x 2 pingvinus pingvinus 4096 апр 25 18:45 mydir1 lrwxrwxrwx 1 pingvinus pingvinus 6 апр 25 18:45 mylink1 -> mydir1 $ cd -P mylink1 $ pwd /home/pingvinus/mydir/mydir1

Команда cd переход по символической ссылке с разыменованием

Переход в домашнюю директорию

Домашняя директория текущего пользователя обозначается значком тильда ~ . Для перехода в домашнюю директорию используется команда:

Переход в директорию, содержащую пробелы в имени

Если директория содержит пробелы, то ее имя (путь) можно заключить в кавычки:

Также можно использовать обратный слеш \ перед каждым пробелом:

Источник

Оцените статью
Adblock
detector