odmin@opslog: ~/blog
← cd ..
odmin@opslog:~/blog$ cat pwd.md

Опции команды pwd

Команда pwd (от *print working directory*) выводит абсолютный путь к текущему рабочему каталогу. Опции -L и -P определяют, как команда обрабатывает символьные ссылки:

bash
pwd -L

Опция -L (от *logical*) выводит логический путь. Если оболочка перешла в каталог через символьную ссылку, она сохраняется в пути.

bash
pwd -P

Опция -P (от *physical*) выводит физический путь, раскрывая все символьные ссылки.

Например, если /home/user/project-link — символьная ссылка на /srv/projects/project и перейти в неё командой cd, результаты будут различаться:

console
$ pwd -L
/home/user/project-link
$ pwd -P
/srv/projects/project

В Bash pwd является встроенной командой и без опций ведёт себя как pwd -L. При этом отдельная утилита GNU Coreutils /usr/bin/pwd по умолчанию использует -P. Узнать, какая команда будет запущена, можно так:

bash
type pwd

Bash также поддерживает две связанные переменные:

  • $PWD содержит логический путь к текущему рабочему каталогу;
  • $OLDPWD содержит путь к предыдущему рабочему каталогу, установленный последним переходом cd.