Quando estou usando tail -f
e quero retornar ao shell, sempre o uso CTRL+C
. Ou, quando estou digitando um comando e sinto vontade de abortá-lo e começar de novo, simplesmente CTRL+C
volto a um prompt de linha de comando vazio. Isso é considerado má prática? Às vezes sinto que pode haver uma maneira melhor de romper com alguma coisa, mas realmente não tenho idéia.
27
Respostas:
Ctrl+ Cenvia um SIGINT para o programa. Isso indica ao programa que você deseja interromper (e encerrar) seu processo. A maioria dos programas captura isso corretamente e sai corretamente. Portanto, sim, esta é uma maneira "correta" de terminar a maioria dos programas.
Existem outros atalhos de teclado para enviar outros sinais para programas, mas esse é o mais comum.
fonte
read()
chamada atual do sistema. Os próximosread()
s não são afetados. Terceiro: nada disso se aplica a programas que colocam a disciplina de linha no modo não canônico, como a maioria dos programas shell das últimas décadas e, de fato, qualquer outro programa que utilize uma biblioteca como o GNUreadline
.Este método é bom, realmente.
fonte
Para abortar um comando longo durante a digitação, às vezes pulo para o início da linha e insiro um sinal de comentário antes de pressionar Enter:
Home#Enter
Pos1#Return
Isso é útil, se eu digitar um comando de cópia com um caminho longo, por exemplo, e enquanto isso observar, preciso primeiro criar o diretório, mas gostaria de repetir o comando posteriormente. Então eu só tenho que retirá-lo do histórico, excluir o hash e inseri-lo.
No Bash, você pode usar o atalho
Alt+#
para comentar seu comando, como apontado nos comentários (Obrigado, @Zorawar).
fonte
Ctrl-A
sem tirar os dedos da linha inicial.Ctrl-E
vai até o fim, a propósito.Alt-#
: ele colocará o comentário e executará o comando (colocando-o no seu histórico).De um modo geral, o uso de Ctrl+ Cé bom quando o programa não oferece uma maneira interativa de finalizar (por design ou com mais frequência, porque congelou ou se tornou inutilizável). Lembre-se de que, no modo interativo, a combinação de teclas que você realmente deseja pode ser Ctrl+ D, que envia um
EOF
sinalizando o final da entrada.fonte
Se estiver usando o Bash, também é possível usar Ctrl- Ze digite
bg
"colocar o trabalho atual em segundo plano".fonte
Como o @Patrick disse no comentário sobre a resposta aceita,
Isso me ajudou quando
Ctrl+C
não funcionou para recuperar a linha de comando após o uso>>
fonte