muda a primeira palavra do comando anterior

5

Por exemplo, eu digito

cat /very/long/path/textfile

e logo depois eu decido dar o próximo comando

rm /very/long/path/textfile

Então, minha pergunta é: Qual é a maneira mais fácil / rápida de substituir a primeira palavra de um comando anterior? (sem teclas de seta ou copiar e colar)

Deve funcionar para qualquer comando (cat, rm e textfile são apenas para este exemplo, não tem que ser esses)

    
por tr3quart1sta 03.01.2013 / 04:47

3 respostas

7

Supondo que você esteja executando um shell com um mecanismo de histórico padrão (por exemplo, bash, shell C,…), digite o novo comando (por exemplo, rm ) seguido por !* . Digite man bash , man csh , ou o que for apropriado para você, para ver mais detalhes (e há lotes deles).

    
por 03.01.2013 / 04:56
4

Se você estiver usando bash ou sh, digite o primeiro comando e pressione "Alt" com "." (Ponto) para obter o último argumento do comando anterior.

cat /very/long/path/textfile

para usar o último argumento do tipo de comando anterior

rm "Alt +". e você começa

rm /very/long/path/textfile
    
por 03.01.2013 / 06:00
3

Se você estiver usando o bash, você pode digitar <Esc>_ para obter o último argumento do comando anterior. Você também pode usar a variável $_ .

Outra abordagem seria recuperar o comando anterior com Ctrl-P , depois usar Ctrl-A para passar para o início do comando e, em seguida, Alt-D para excluir a primeira palavra, digite a nova primeira palavra (o nome do comando ) e pressione Enter.

    
por 03.01.2013 / 07:32