quando eu primeiro toque linux, eu pensei que é um comando sobre senha e /devé algo sobre o desenvolvimento (códigos fonte ou algo parecido)
Liuyan刘研
2
Ah, dev significa dispositivo ?! Sempre pensado até agora, significava apenas dev ... Eu pensei que dev / null era onde os desenvolvedores do linux colocavam o objeto nulo especial. Obrigado @LiuYan 刘 研
1owk3y
@LiuYan 刘 研 - Concordo totalmente que é confuso se você não sabe. Eu tive que procurá-lo. Significa "Imprimir diretório de trabalho" para qualquer outra pessoa que se surpreenda com o motivo pelo qual escolheria esse comando para essa funcionalidade.
Squarecandy
11
@squarecandy, é por isso que evitarei usar os acrônimos o máximo possível quando crescer mais e mais, mesmo o acrônimo não tem um significado ambíguo no momento - você nunca sabe qual o significado que terá no futuro. Há uma piada contada pela boneca de Jeff Dunham , Walter: O que acontece na DC permanece no YouTube! , Em que os meios DC D igital C Amera mas também significa Washington, D istrict de C olumbia na brincadeira.
LiuYan # 13/0117
11
Embora a resposta geral seja pwd, observe que isso pode gerar resultados diferentes, dependendo de como você alcançou um determinado diretório e se a rota incluiu links simbólicos.
Por exemplo, se você tiver um diretório chamado reale um link simbólico para esse diretório chamado virtuale você cdpara o virtualdiretório, pwdmostrará esse virtualnome de diretório, mesmo que o diretório atual em que você esteja seja real.
Para mostrar o diretório subjacente real, use pwd -Pou readlink -f(para um caminho arbitrário):
$ mkdir real
$ ln -s real virtual
$ cd virtual
$ pwd
/ home / nome de usuário / tmp / virtual
$ pwd -P
/ home / nome de usuário / tmp / real
$ readlink -f.
/ home / nome de usuário / tmp / real
Observe que os shells geralmente substituem o pwdcomando por sua própria versão interna, portanto no meu sistema (RHEL6), mesmo que a pwd(1)página do manual sugira que --physicalfuncionará tão bem quanto -P, porque estou executando bash, não funciona:
$ pwd --physical
opção bash: pwd: -: inválida
pwd: uso: pwd [-LP]
$ / bin / pwd --physical
/ home / nome de usuário / tmp / real
$ / usr / bin / env pwd --physical
/ home / nome de usuário / tmp / real
Como outros disseram, pwdgeralmente faz o trabalho suficientemente bem. No entanto, gostaria de acrescentar uma ideia que me ajudou.
Em todos os shells de uso comum hoje em dia, você pode personalizar a aparência do prompt de comando. Eu gosto de personalizar o meu para que ele me mostre o nome do computador em que estou e meu diretório de trabalho. Dessa forma, eu sempre sei onde estou. (A parte do nome do computador me ajuda a perceber se a janela do terminal que estou usando foi usada para SSH em um servidor remoto.) Por exemplo, quando abro uma nova janela do terminal no meu laptop, que chamo de Plastico, vejo o seguinte:
Plastico ~> cd Desktop/
Plastico ~/Desktop> cd ~/Sites/raygunrobot.com
Plastico ~/Sites/raygunrobot.com> cd /usr
Plastico /usr>
Você pode ver que está abreviando meu diretório pessoal como ~. Acho que fazer isso pelos meus prompts de terminal é incrivelmente útil - sempre sei de imediato exatamente onde estou, ainda mais do que faria olhando para uma janela do Finder.
No tcsh, faço isso adicionando set prompt = 'Plastico %~%# '
ao meu arquivo .tcshrc no meu diretório pessoal. Também fiz isso no ksh adicionando export PS1="Plastico $PWD $ "ao meu arquivo .profile. Mas, como usuário de Linux, você provavelmente usa o Bash, com o qual não tenho muita experiência (sou uma pessoa estranha assim). Mas parece que posso fazê-lo adicionando PS1="Plastico \w $ "ao meu arquivo .bashrc.
Edit: Acabei de notar que o OP indica que você está interessado em sh, não no bash. Ah bem; espero que as pessoas achem isso útil independentemente.
Essa é uma ideia legal. Pode funcionar bem para um caso de uso de desktop simples. Parece que pode ficar complicado para diretórios super profundos, se o seu prompt sozinho for Plastico /var/www/vhosts/myveryexcellentwebsite.com/public_html/wp-content/themes/myveryexcellenttheme/js/vendor/excellentjs/ >ou algo parecido.
Squarecandy
1
$ pwd
/your/current/directory
$
pwdvem do diretório de trabalho de impressão .
Na página do manual do Linux:
Nome
pwd - imprime o nome do diretório atual / ativo
Sinopse
pwd [OPÇÃO] ...
Descrição
Imprima o nome do arquivo completo do diretório de trabalho atual.
-L , --logical
use PWD do ambiente, mesmo que contenha links simbólicos
-P , --físico
evite todos os links simbólicos
--Socorro
exibir esta ajuda e sair
--versão
informações da versão de saída e saída
NOTA: seu shell pode ter sua própria versão do pwd, que geralmente substitui a versão descrita aqui. Por favor, consulte a documentação do seu shell para detalhes sobre as opções que ele suporta.
unix whereami
Respostas:
Tente
pwd
.fonte
/dev
é algo sobre o desenvolvimento (códigos fonte ou algo parecido)Embora a resposta geral seja
pwd
, observe que isso pode gerar resultados diferentes, dependendo de como você alcançou um determinado diretório e se a rota incluiu links simbólicos.Por exemplo, se você tiver um diretório chamado
real
e um link simbólico para esse diretório chamadovirtual
e vocêcd
para ovirtual
diretório,pwd
mostrará essevirtual
nome de diretório, mesmo que o diretório atual em que você esteja sejareal
.Para mostrar o diretório subjacente real, use
pwd -P
oureadlink -f
(para um caminho arbitrário):Observe que os shells geralmente substituem o
pwd
comando por sua própria versão interna, portanto no meu sistema (RHEL6), mesmo que apwd(1)
página do manual sugira que--physical
funcionará tão bem quanto-P
, porque estou executandobash
, não funciona:fonte
Como outros disseram,
pwd
geralmente faz o trabalho suficientemente bem. No entanto, gostaria de acrescentar uma ideia que me ajudou.Em todos os shells de uso comum hoje em dia, você pode personalizar a aparência do prompt de comando. Eu gosto de personalizar o meu para que ele me mostre o nome do computador em que estou e meu diretório de trabalho. Dessa forma, eu sempre sei onde estou. (A parte do nome do computador me ajuda a perceber se a janela do terminal que estou usando foi usada para SSH em um servidor remoto.) Por exemplo, quando abro uma nova janela do terminal no meu laptop, que chamo de Plastico, vejo o seguinte:
Você pode ver que está abreviando meu diretório pessoal como
~
. Acho que fazer isso pelos meus prompts de terminal é incrivelmente útil - sempre sei de imediato exatamente onde estou, ainda mais do que faria olhando para uma janela do Finder.No tcsh, faço isso adicionando
set prompt = 'Plastico %~%# '
ao meu arquivo .tcshrc no meu diretório pessoal. Também fiz isso no ksh adicionandoexport PS1="Plastico $PWD $ "
ao meu arquivo .profile. Mas, como usuário de Linux, você provavelmente usa o Bash, com o qual não tenho muita experiência (sou uma pessoa estranha assim). Mas parece que posso fazê-lo adicionandoPS1="Plastico \w $ "
ao meu arquivo .bashrc.Edit: Acabei de notar que o OP indica que você está interessado em sh, não no bash. Ah bem; espero que as pessoas achem isso útil independentemente.
fonte
Plastico /var/www/vhosts/myveryexcellentwebsite.com/public_html/wp-content/themes/myveryexcellenttheme/js/vendor/excellentjs/ >
ou algo parecido.pwd
vem do diretório de trabalho de impressão .Na página do manual do Linux:
fonte