Como posso desfazer uma nova linha acidental no bash?

4

Se eu involuntariamente adicionar uma nova linha em um comando, até onde eu saiba, a única maneira de desfazer isso é pressionar Ctrl + c e digitar o comando novamente. Por exemplo:

$ cat 'John's File'
> ^C
$ cat "John's File"

Isso é irritante se o comando original for longo.

Existe uma maneira de excluir a nova linha e remover o prompt > para que eu possa voltar ao comando original?

    
por EmmaV 08.11.2015 / 18:23

2 respostas

1

Is there a way to delete the newline ... ?

Na verdade: não. Mas existem excelentes soluções alternativas.

Como você já introduziu um Enter , a linha foi armazenada na lista de comandos executados. Pressione Control C para sair do comando e, sem digitar novamente, pressione seta para cima . O comando inserido aparece novamente e pode ser editado.

    
por 08.11.2015 / 19:36
2

De man bash

       edit-and-execute-command (C-xC-e)
          Invoke an editor on the current command line, and execute the result as shell commands.  Bash attempts to invoke $VISUAL, $EDITOR, and emacs as the editor, in that order.
    
por 08.11.2015 / 19:42