Таким образом, Википедия ( ссылка ) говорит мне, что команда pwd
является сокращением от «печать рабочего каталога», и это имеет смысл.
Но для переменной среды буква «P» должна быть аббревиатурой от чего-то другого, кроме print.
Я слышал, как люди говорили о «текущем рабочем каталоге», который звучит лучше и более интуитивно понятен, но переменная окружения, похоже, называется $ PWD, а не $ CWD. Никто никогда не говорит: «Вы проверяли переменную рабочего каталога печати?».
В настоящее время я играю с сервером веб-приложений uWSGI, и при запуске он сообщает мне (на странице статистики uWSGI):
"cwd":"/home/velle/greendrinks",
таким образом, им, очевидно, нравится (более интуитивный акроним) cwd
более pwd
.
Я думаю, я пытаюсь выяснить, неправильно ли я что-то понял, или это просто вопрос присвоения переменной среды неинтуитивного имени?
источник
$PWD
эквивалентно`pwd`
, и это было достаточно оправданием.Ответы:
Это зависит от того, что вы делаете. Прежде всего,
$PWD
это переменная окружения иpwd
встроенная оболочка или настоящий двоичный файл:Теперь встроенная команда bash просто напечатает текущее значение,
$PWD
если вы не используете-P
флаг. Как объяснено вhelp pwd
:pwd
Двоичный, с другой стороны, получает текущий каталог черезgetcwd(3)
системный вызов , который возвращает то же значениеreadlink -f /proc/self/cwd
. Для иллюстрации попробуйте перейти в каталог, который является ссылкой на другой:Итак, в заключение, о системах GNU (таких как Ubuntu),
pwd
иecho $PWD
они эквивалентны, если вы не используете-P
опцию, но/bin/pwd
отличается и ведет себя какpwd -P
.Источник /ubuntu//a/476633/291937
источник
PWD
быть переменной среды. Это на самом деле случай по умолчанию с большинством, если не со всеми оболочками, и имеет смысл предоставить его дочерним процессам.$PWD
иpwd
(которые уже были рассмотрены в U & L, прежде чем я верю), а в причинах, которые привели к присвоению имени переменной "PWD
".ksh88
документом, в котором он был:PWD The present working directory set by the cd command.
Вы должны добавить это в свой ответ.$ PWD является Р athname тока W orking D irectory
При наличии символьных ссылок результаты чтения $ PWD могут отличаться от выполнения команды pwd .
источник
$PWD
иpwd
?