Eu uso o terminal para quase todas as tarefas. Digamos que eu digitei um comando enorme como este:
sudo a-huge-command
Qual é a maneira mais fácil de excluir todo o comando com um único atalho, em vez de continuar pressionando a backspacetecla?
Sou um novato no Ubuntu procurando usar o Ubuntu de uma maneira profissional.
command-line
shortcut-keys
homem Morcego
fonte
fonte
bash
(e várias outras conchas) para entender as chaves VI:set -o vi
. Você poderia, então, fazeresc
,dd
(ou não editar / substituir como você poderia fazer em vi [m]).ls
) e depois retrocesso - geralmente, são apenas algumas teclas pressionadas, por isso não é tão grande assim. ' acordo.Respostas:
Use Ctrl+ Upara cortar o texto da posição do cursor até o início da linha de comando. Posteriormente, se desejar, use Ctrl+ Ypara colar o texto recortado.
Se você quiser apenas descartar a linha de comando atual e obter um novo prompt de limpeza, pressione Ctrl+ C.
Para obter mais referências, consulte a documentação do Ubuntu para usar o terminal.
fonte
dash
é o intérprete padrão para/bin/sh
comandos.bash
é o logon padrão e o shell TTY.Ctrl + C
que é um péssimo hábito, pois muitas vezes vou acidentalmente enviar sinais para programas com seu próprio prompt, matando-os e perdendo meu progresso e / ou impulso.Ctrl+ Udeve ajudá-lo.
Abaixo estão as demais opções disponíveis. Agarrado a partir daqui
O UNIX compreende vários comandos da tecla Control, comandos que você digita mantendo pressionada a tecla Control (Ctrl) enquanto pressiona uma segunda tecla
CTRL+ S- congela a tela e impede que qualquer exibição na tela continue (equivalente a uma tecla sem rolagem) (às vezes leva um tempo para funcionar)
CTRL+ Q- descongela a tela e permite que a exibição continue
CTRL+ C- interrompe um programa em execução
CTRL+ \- igual a CTRL - C, mas mais forte (usado quando o terminal não responde)
CTRL+ Z- suspende um programa em execução (use o comando fg para continuar o programa, consulte s $
CTRL+ H- exclui o último caractere digitado
CTRL+ W- exclui a última palavra digitada
CTRL+ U- exclui a última linha digitada
CTRL+ R- pesquisa texto do histórico
CTRL+ D- finaliza a entrada de texto para muitos programas UNIX, incluindo correio e gravação.
Nota:
Quando excluímos usando CTRL+ Wou CTRL+ U, também estamos executando uma operação de "cortar" (cortar) (apagar) (excluir e armazenar no buffer / área de transferência). Para colar (puxar) a sequência no buffer / área de transferência, use CTRL+ Y.
fonte
Eu normalmente estou usando Alt+ Backspace. Se você estiver usando
bash
, isso permitirá que você excluir até que o caractere especial anterior (/
,;
,, etc.). Se você estiver usando
zsh
, ele removerá as barras e o ponto-e-vírgula também. É muito mais rápido do que apenas bater Backspace.Em
bash
, isso é diferente de Ctrl+ wno sentido de que Ctrl+ wexclui a palavra anterior, onde Alt+ Backspaceexclui até que o caractere especial anterior seja encontrado. Emzsh
, ambas as combinações de teclas fazem a mesma coisafonte
set -o emacs
estiver definido.ALT+Backspace
tambémCTRL+C
. Isso funciona em qualquer linux. :)/
,;
, ``, etc).Aqui está uma lista de atalhos de teclado que podem ser usados com o
bash
shell.O que você quer fazer é alcançado com Ctrl+ Cou Ctrl+ Uno final da linha.
fonte
Ctrl+C
ou (Ctrl+E
Ctrl+U
)man tcsh
ou usebindkey -l
. Parece que é muito diferente.Alt+ #(ou seja, Alt+ Shift+ 3) comentará o comando atual e continuará na próxima linha.
Por exemplo, se você digitar t, e, s, t, Alt+ #, você obterá:
Se você deseja receber o seu antigo comando de volta, você pode pressionar a seta para cima e apagar o caracter ( Up, Home, Deleteou Up, Ctrl+ A, Delete).
Eu acho que é um recurso do GNU Readline , pois funciona em Bash, Python e MySQL.
fonte
Ctrl+ C- além de interromper os comandos em execução, também pode ser usado para "interromper" a entrada da linha de comando.
Ao contrário do Ctrl+ U, você ainda verá o que digitou, mas o cursor saltará para a nova linha e você receberá um prompt de linha de comando vazio.
fonte
O
readline
atalho do Bash Ctrl+ X+ Eé muito útil quando você está trabalhando na linha de comando. Se você estiver digitando um comando longo e decidir que deseja abri-lo no seu editor de texto padrão, tudo o que você precisa fazer é usar o atalho.Ele faz uso da
readline
biblioteca do Bash e esse atalho específico é chamado deedit-and-execute-command
. Você pode definir o seu editor padrão, colocandoexport EDITOR="/usr/bin/vi"
em~/.bashrc
ou~/.bash_aliases
.Entre
bind -P
para ver suasreadline
ligações atuais e consulteman readline
ou as páginas de manual do Ubuntu online para obter mais informações.fonte
Também uso Esc+ Backspacepara excluir todos os caracteres anteriores até um caractere especial. É o mesmo que é Alt+ Backspace. Prático, se você estiver apenas excluindo algumas palavras de cada vez.
fonte
Para
vi
ligações de teclasQuando usin um
vi
mapa de teclas, como embash
comset -o vi
ouzsh
combindkey -v
:Modo de inserção
É apenas a mesma tecla que no modo padrão / emacs:
Ctrl+U
excluir da posição atual para o início da linha. Portanto, ele exclui toda a linha se o cursor estiver no final.
Modo normal
Existem várias maneiras de excluir a linha com dois pressionamentos de tecla:
Exclua no sentido da linha
dd
, com a contagem padrão de uma linha:dd
que é o mais simples em termos de teclas tocadas.
Outra maneira é: Vá para o início da linha
^
e exclua até o final da linha comD
:^D
Os dois excluem a linha inteira, não apenas para a esquerda, como Ctrl+ Uno modo de inserção ou a variante bleow.
Se você está no final da linha atualmente, não precisa excluir nada à direita, isso também faria:
Exclua daqui
d
, para o início da linha^
:d^
Você pode usar tudo isso no modo de inserção; primeiro é necessário o escape usual para entrar no modo normal. Por exemplo, para excluir a linha inteira do modo de inserção, use:
Escdd
fonte