Hoje, em um script bash shell, observei o comando abaixo no final do script. Eu sei o que é, cd
mas não tenho consciência do significado de um travessão depois dele.
cd -
O que isto significa? O Google ingenuamente trunca o, -
então não consigo encontrar sua resposta.
man cd
na minha máquina, FYI.pushd
epopd
. Eu não poderia viver sem eles.cd
não é um binário externo, é um comando embutido nos shells. dicaman bash
.man cd
no meu sistema (Gentoo), ele diz:This manual page is part of the POSIX Programmer's Manual
etc etc. Se o seu estiver faltando, você pode sempre pesquisar no Googleman cd
.Respostas:
Se um único traço for especificado como o argumento, ele será substituído pelo valor de
OLDPWD
.O
OLDPWD
é definido porcd
comando e é o diretório de trabalho anterior.fonte
-
como arquivo.cd ./-
ou excluí-lo com um escaperm -fr -- -
cd -
retorna ao diretório em que estava anteriormente.Por exemplo:
Eu estava em / opt, mudei para / usr / bin e voltei para / opt com
cd -
fonte
cd -
o leva de volta ao último diretório.$ cd ~/Desktop $ pwd /Users/daknok/Desktop $ cd / $ pwd / $ cd - $ pwd /Users/daknok/Desktop
fonte
cd -
retorna ao diretório anterior em que você estava.Diga que estou dentro
/usr/
e eu digitocd /var/local/someplace/else
Então eu uso
cd -
voltarei para/usr
fonte
Do manual
Portanto, o
-
é equivalente a$OLDPWD
, que contém o último diretório em que o shell estava e é definido pelacd
chamada anterior .fonte
Do homem encontrado aqui: http://ss64.com/bash/cd.html
Quickly get back $ cd -
fonte
cd - traz você de volta ao último diretório onde você estava. por exemplo
cd ~/Documents cd ~ cd /
Agora você está em '/' e, se executar 'cd -', estará em '~'. BTW, execute 'cd -' mais uma vez, você retornará a '/' mas não a '~ / Documentos'
fonte
“Diretório atual“ É o que o comando bash cd terminal significa. Significa "mantenha-me neste diretório"
fonte