No terminal, como posso definir uma chave para ir para o diretório anterior em que eu estava ao mudar de diretório com o cd
comando?
Por exemplo, eu estou em /opt/soft/bin
e eu cd
em /etc/squid3
e eu quero voltar para o primeiro diretório.
shell
cd-command
Hojat Taheri
fonte
fonte
cd -
. Por exemplo, quando você digita,cd /usr/local
sabe que está/usr/loal
, mas quando digitacd -
nem sempre se lembra de qual diretório veio. Por isso, evita que você digitecd -; pwd
. Mas isso é tudo especulação.alias -- -='cd -'
e use-
(1 caractere) em vez decd -
(4 caracteres). Mais rápido:D
cd -
duas vezes. Vocêcd /; cd /usr; cd -; cd -
deve estar em/usr
. Mas talvez eu não tenha entendido sua pergunta.As outras respostas são definitivamente completas no sentido de resposta direta.
cd -
ecd $OLDPWD
são definitivamente as principais opções para isso. No entanto, muitas vezes acho que entrar em um fluxo de trabalhopushd
epopd
funcionar melhor.Para encurtar a história, se você estiver mudando para um diretório com a intenção final de voltar para onde começou, use
pushd
/popd
.Exemplo estendido
A principal diferença é facilmente mostrada por um exemplo.
Neste ponto, você tem uma pilha de diretórios que é
dir2, dir1
. A execuçãopushd
sem argumentos o colocará de volta nadir1
pilha agora comodir1, dir2
.popd
faria o mesmo, mas deixaria uma pilha de diretórios vazia. Isso não é muito diferente de como você seria nocd -
fluxo de trabalho.No entanto, agora você pode alterar os diretórios várias vezes e voltar ao
dir1
. Por exemplo,Se você executar
popd
nesse ponto, retornará paradir1
.fonte
pushd
e voltar repetidamente para a pasta anterior enquanto estiverpopd
pressionando -ing.dirs -v
, mas a realidade para mim é que geralmente o caso simples é tudo o que realmente uso. (Ou, pior, cometo um erro ao tentarpush +2
ou algo parecido) Além disso, pensei em passos pequenos para convencer alguém a experimentar o fluxo de trabalho. :)cd
chega ao topo da pilha sem aparecer?Você deveria usar:
faz o mesmo que
cd -
(da resposta atualmente aceita) sem o eco irritante do diretório e é mais fácil digitar quecd "$OLDPWD"
oucd - > /dev/null
.fonte
alias -- -='cd "$OLDPWD"'
usar-
(1 caractere) em vez decd ~-
(5 caracteres).:)
cd ~-/..
funciona, mascd -/..
não!mudará para o diretório de trabalho anterior.
fonte
Você pode "definir uma chave" para 'cd -' editando o arquivo '~ / .bashrc' e incluindo um alias para o comando. Por exemplo, você pode adicionar 'cdc' para torná-lo 'cd -', o que forneceria uma maneira mais curta de chegar ao último diretório adicionando:
Dessa forma, você simplesmente digitaria 'cdc' e o colocaria em seu último diretório de trabalho.
fonte
bind '"\e[24~":"\C-k \C-ucd -\n"'
(ou, de preferência, mova-o para oinputrc
arquivo conforme mencionado na resposta).cd ..
vai para a pasta precedente na árvore da pasta.cd -
vai para a pasta em que estava antes. Este comando não funcionou em algumas distros (ubuntu 16.04), funciona no debian 9.fonte