Então a Wikipedia ( link ) me diz que o comando pwd
é abreviado para "print working directory", e isso faz sentido.
Mas para a variável de ambiente, o "P" deve ser um acrônimo para algo que não seja impressão.
Eu ouço pessoas falando sobre o "diretório de trabalho atual", que soa melhor e é mais intuitivo, mas ainda assim a variável de ambiente parece ser chamada de $ PWD, e não $ CWD. Ninguém nunca diz "Você verificou a variável de diretório de trabalho de impressão?".
Atualmente, estou brincando com o servidor de aplicativos da web uWSGI e, ao executá-lo, informa-me (na página de estatísticas do uWSGI):
"cwd":"/home/velle/greendrinks",
para que eles, obviamente, como o (sigla mais intuitivo) cwd
sobre pwd
.
Acho que estou tentando descobrir se entendi mal alguma coisa, ou se é apenas uma questão de ter dado à variável de ambiente um nome não intuitivo?
fonte
$PWD
é equivalente a`pwd`
, e isso foi justificativa suficiente.Respostas:
Isso depende do que você está fazendo. Primeiro de tudo,
$PWD
é uma variável de ambiente epwd
é um shell embutido ou um binário real:Agora, o bash embutido simplesmente imprimirá o valor atual de, a
$PWD
menos que você use o-P
sinalizador. Como explicado emhelp pwd
:O
pwd
binário, por outro lado, obtém o diretório atual através dagetcwd(3)
chamada do sistema, que retorna o mesmo valor quereadlink -f /proc/self/cwd
. Para ilustrar, tente mudar para um diretório que é um link para outro:Portanto, em conclusão, nos sistemas GNU (como o Ubuntu)
pwd
eecho $PWD
são equivalentes, a menos que você use a-P
opção, mas/bin/pwd
seja diferente e se comporte comopwd -P
.Fonte /ubuntu//a/476633/291937
fonte
PWD
ser uma variável de ambiente. Na verdade, é o caso padrão da maioria, se não de todos os shells, e faz sentido fornecê-lo aos processos filhos.$PWD
epwd
(que já foram abordadas em U&L antes de eu acreditar), mas sobre os motivos que levaram a nomear a variável "PWD
".ksh88
esse documento como:PWD The present working directory set by the cd command.
Você deve adicionar isso à sua resposta.$ DTD é a P athname da corrente W orking D irectory
Quando houver links simbólicos, poderão haver resultados diferentes, da leitura de $ PWD à execução do comando pwd .
fonte
$PWD
epwd
?