Como mudo para o diretório para o qual acabei de mover esse arquivo?

10

Então, vamos supor que eu acabei de fazer:

mv ./myfile /to/some/other/place/

E agora decido que quero seguir o arquivo e entrar nesse diretório.

Enquanto eu poderia ir para o mouse, selecione o texto, digite 'cd' e clique com o botão direito do mouse para colar - eu preferiria um diretório mais rápido baseado em teclado.

Então, qual é a melhor maneira de fazer isso?
(Em geral, e se diferente, Centos + Bash especificamente)

Peter Boughton
fonte

Respostas:

12

Se você digitar "! $", Ele imprimirá o último argumento da linha anterior. Qual será o diretório para o qual você moveu o arquivo.

thepocketwade
fonte
Melhor coisa que aprendi o dia todo.
markdrayton
1
O cd $ _ de Rory é Posix, então ele funciona com ksh e bourne shell, bem como com o bash.
kmarsh
1
"cd $ _" não funciona no csh ou no tcsh, mas funciona no zsh. csh e tcsh suportam! $, no entanto. Apenas para o registro.
thepocketwade
5

Experimentar

cd !$
Christian Lescuyer
fonte
1
Obrigado - isso funciona, mas o pocketwade deu uma resposta mais completa e, portanto, aceitou a dele.
22640 Peter Boughton
4

Tente "cd" e depois "[Alt] +". (pode ser usado repetidamente) Rolará todos os comandos anteriores até o último parâmetro. Então será parecido com:

mv ./myfile /to/some/other/place/
cd <Alt>+.
katriel
fonte
Obrigado, também é útil, pois às vezes eu talvez não queira o comando imediatamente anterior.
22340 Peter Boughton
Aqui está outro truque útil do bash para você: Usar Ctrl + r permitirá pesquisar rapidamente seu histórico digitando um comando parcial. Também pode ser usado várias vezes para percorrer de volta para partes mais antigas de sua história
Katriel
4

Esc- .(Escape seguido por Período) Fornece o último argumento do comando anterior, é um atalho de linha de leitura . Você pode digitar várias vezes para percorrer os últimos argumentos dos comandos anteriores. O Readline é uma biblioteca de entrada de linha de comando usada por muitos shells (como bash, mesmo mantenedor), clientes irc etc.

Este é provavelmente o meu atalho de teclado favorito (seguido de ctrl- apara o início da linha e ctrl- epara o final da linha), experimente ;-)

Atualização: Ah, Katriel postou Alt- ., é a mesma coisa, apenas uma chave diferente (em Altvez de Esc)

Kyle Brandt
fonte
2

Você também pode usar $_como o último argumento da última linha de comando

Rory
fonte