Existe alguma maneira de voltar ao diretório de trabalho anterior depois de fazer um cd
para um diretório diferente?
Meu caso de uso é que estou percorrendo uma estrutura de diretório para um projeto Java e estou esperando que o diretório atual tenha apenas um subdiretório. Então, eu digito cd
e acertar Tabe Enterrapidamente. No entanto, a Tabfalha, como eu esperava por um subdiretório, quando na verdade há mais. Então, agora, acabei de executar cd
e agora estou no meu diretório pessoal, em vez do projeto Java. Existe uma maneira de "desfazer" isso cd
e voltar ao diretório em que eu estava?
command-line
bash
nickb
fonte
fonte
cd -
é ótimo para voltar um nível, mas se você quiser voltar alguns níveis, confira este script:acd_func.sh
É ótimo.
cd --
para ver seu histórico ecd -3
voltar três níveis, por exemplo.fonte
Você também pode usar
pushd
epopd
utilizar a pilha de diretórios :)Algumas informações aqui
fonte
Além disso,
cd ..
você pode levá-lo de volta ao diretório pai do diretório de trabalho e, se necessário, o comando pode ser repetido até chegar onde você deseja estar. De fato, toda vez que é evocado, você volta à árvore de diretórios, que terminaria em/
(o diretório raiz) se você continuasse repetindo o comando.Por outro lado ,
cd -
na verdade , o diretório de trabalho anterior é o diretório de trabalho atual (conhecido como.
) e com a localização exata no sistema de arquivospwd
.Portanto, ambos
cd ..
ecd -
podem ser úteis em diferentes circunstâncias ao navegar na árvore de diretórios, embora sejam diferentes nos aspectos mencionados acima. Talvez o comando mais útil depois de se divertir experimentando esses dois comandos seja ocd
que retorna à pasta inicial.fonte
A melhor maneira de fazer isso para voltar é
cd -
, no entanto, se você quiser pular muitos níveis de uma vez, é melhor usarcd ..
um nível,cd ../..
dois,cd ../../..
três e assim por diante ... uma boa maneira de fazer isso rápido é roteiro:fonte
cd
em um script não afeta o shell pai. Você precisaria colocar isso em uma função shell para que seja útil.up(){ local n="$1"; while ((n--)); do path+='../'; done; cd "$path"; }