You are here

Лекция 1.2. Теория по каталогам: [pwd] [cd] [cd ~] [cd -] [pushd dir-name] [popd]

Немного теории : Чтобы уточнить, где мы сейчас в данный момент находимся, используем команду « pwd » или «print working directory — напечатать рабочий каталог»:

root@fantom-Lenovo:~# pwd /root


Чтобы сменить каталог, используется команда «cd», к примеру:

«cd [куда-то]» ,где [куда-то] - она бывает «относительной», или «абсолютным» (если начинается с «/» - корень).

Если набрать просто «cd», вы попадёте в свой «home» каталог. Это один из быстрых способов, туда перейти) Кто-то может ляпнуть, есть ведь ещё [cd ~] - но проблема в том, что встречаются shell которые не понимают этот символ – да и смысл? Если [cd] - короче) Также надо напомнить, что [~] - это некий специальный символ, вместо которого bash подставляет значение вашего home каталога. Проще говоря, можно написать полный путь от корня, а можно путь от текущей папки home конкретного пользователя. Пример:

[cd /home/user/test] или [cd ~/test]

- что, несомненно короче). Так как shell понимает, что «~» = «/home/user» - в конкретном случае). Также с помощью символа «~» можно попасть в чужой каталог, при наличии соответствующих прав:

[cd ~user2]

(заметим! тильда пишется сразу перед именем нужного пользователя)



Также хотеться заметить, команда [cd -] - переход обратно в тот каталог. который был перед этим (работает только в bash и ещё некоторых shell).

Немного о стековой системе в bash:
  • есть [pushd] - помещает значения в стек и, есть [popd] - вынимает значения из стека: Этот набор команд является составной частью механизма "закладок" на каталоги и позволяет перемещаться по каталогам вперед и назад в заданном порядке.
  • [pushd dir-name] - помещает имя текущего каталога в стек и осуществляет переход в каталог dir-name.
  • [popd] - выталкивает, находящееся на вершине стека, имя каталога и одновременно осуществляет переход в каталог, оказавшийся на вершине стека.
Данные команды полезные для перехода обратно по нужным каталогам (не тупо вверх, как команда [cd -])

Замечание*: принцип прост – положил [pushd dir-name], вынул [popd]. Обратно уже не вернуться, так как уже вынули!

Автор: AdminLS
Источник: http://linuxsql.ru