Equivalente de botões de avanço / retrocesso para shell unix (ao navegar em diretórios)?

5

Eu gostaria de poder digitar comandos de terminal para frente / para trás, especialmente se eu for de um diretório com um nome super longo para casa (e quiser voltar para o diretório com o nome super longo) .

    
por InquilineKea 29.07.2011 / 10:08

4 respostas

8

pushd e popd podem ser muito úteis. Por exemplo, tente


$ pushd somedir

e quando terminar, faça


$ popd

e você está de volta onde você começou.

A melhor parte é que você pode fazer


$ pushd somedir

$ pushd anotherdir

$ pushd onemoredir

e, em seguida, você pode "voltar atrás" um por vez usando popd.

Boa sorte!

    
por 29.07.2011 / 15:21
19

O comando cd - levará você de volta ao diretório anterior.

Veja também os comandos pushd e popd que podem ser usados basicamente para salvar uma lista ordenada de diretórios em que você estava e voltar para eles.

    
por 29.07.2011 / 10:15
3

Além de cd - e pushd e popd que outros mencionaram, há também cd $OLDPWD . geralmente cd $OL<TAB> é suficiente, preenchimento automático no trabalho.

Ao usar pushd e popd , o dirs builtin de bash pode realmente ajudar, por exemplo: dirs -v imprime a pilha de diretórios com uma entrada por linha, prefixada com seu número de posição na pilha. tente help dirs para mais.

Observe que, se você quiser alterar para um diretório chamado - , caso tenha um, o recurso acima será um problema. você precisará fazer cd ./- . melhor ainda, não dê nomes a seus diretórios.

    
por 31.07.2011 / 10:21
0

Existe um script que, digitando cd -- , permite alternar para um dos dez últimos diretórios visitados enquanto estiver em um shell Bash específico. Aqui está um exemplo de seu uso:

lotzmana@safe$ cd work
lotzmana@safe$ cd scripts
lotzmana@safe$ pwd
/home/petarma/work/scripts
lotzmana@safe$ cd --
 0  ~/work/scripts
 1  ~/work
 2  ~
lotzmana@safe$ cd -2
lotzmana@safe$ pwd
/home/petarma

O roteiro foi publicado por Petar Marinov no Linux Gazette, edição nº 109, dezembro de 2004 e também um mês antes em geocities .

    
por 21.06.2013 / 09:02