Bash
Навигация по каталогам
Поиск…
Изменить на последний каталог
Для текущей оболочки это приведет вас к предыдущей директории, в которой вы были, независимо от того, где она была.
cd -
Выполняя его несколько раз эффективно «переключает», вы находитесь в текущем каталоге или в предыдущем.
Переход в домашний каталог
Каталог по умолчанию - это домашний каталог ( $HOME
, обычно /home/username
), поэтому cd
без какой-либо директории отправляет вас туда
cd
Или вы можете быть более явным:
cd $HOME
Ярлык для домашнего каталога ~
, поэтому он также может быть использован.
cd ~
Абсолютные и относительные каталоги
Чтобы перейти в абсолютно определенный каталог, используйте полное имя, начиная с обратного слэша \
, таким образом:
cd /home/username/project/abc
Если вы хотите изменить каталог рядом с текущим, вы можете указать относительное местоположение. Например, если вы уже находитесь в /home/username/project
, вы можете ввести подкаталог abc
таким образом:
cd abc
Если вы хотите перейти в каталог выше текущего каталога, вы можете использовать псевдоним ..
Например, если вы были в /home/username/project/abc
и хотели перейти в /home/username/project
, то вы сделали бы следующее:
cd ..
Это также можно назвать «вверх» в каталоге.
Перейдите в каталог сценария
В общем, существует два типа сценариев Bash:
- Системные инструменты, которые работают из текущего рабочего каталога
- Инструменты проекта, которые изменяют файлы относительно их собственного места в файловой системе
Для второго типа скриптов полезно изменить каталог, в котором хранится скрипт. Это можно сделать с помощью следующей команды:
cd "$(dirname "$(readlink -f "$0")")"
Эта команда запускает 3 команды:
-
readlink -f "$0"
определяет путь к текущему скрипту ($0
) -
dirname
преобразует путь к скрипту в путь к его каталогу -
cd
изменяет текущий рабочий каталог на каталог, который он получает отdirname