Подтвердить что ты не робот

Что означает "cd -"?

В оболочке bash script сегодня я заметил следующую команду в конце script. Я знаю, что такое cd, но я не знаю о значении тире после него.

cd -

Что это значит? Google наивно обрезает -, поэтому я не могу найти его ответ.

4b9b3361

Ответ 1

Если в качестве аргумента задана одна тире, она будет заменена значением OLDPWD.

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

Ответ 3

cd - возвращает вас в последний каталог.

$ cd ~/Desktop
$ pwd
/Users/daknok/Desktop
$ cd /
$ pwd
/
$ cd -
$ pwd
/Users/daknok/Desktop

Ответ 4

cd - возвращается в предыдущий каталог, в котором вы были.

Скажем, что я в /usr/, и я набираю cd /var/local/someplace/else

Затем я использую cd - Я вернусь к /usr

Ответ 5

Из руководства

Аргумент of - эквивалентен $OLDPWD. Если непустая директория имя из CDPATH, или если - первый аргумент, а изменение каталога успешно, абсолютный путь нового рабочий каталог записывается на стандартный вывод. Возврат Значение истинно, если каталог был успешно изменен; ложный в противном случае

Поэтому - эквивалентен $OLDPWD, который содержит последний каталог, в котором была оболочка, и устанавливается предыдущим вызовом cd.

Ответ 7

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

cd ~/Documents
cd ~
cd /

Теперь вы находитесь в '/', и если вы запустите 'cd -', вы попадете в '~'. BTW, запустите 'cd -' еще раз, вы вернетесь в '/', но не '~/Documents'