Qual é a chave de interrupção para o comando Linux "less"

29

Quando você desloca-f com menos, pode ver a atualização do arquivo em tempo real e a mensagem "Aguardando dados ... (interromper para interromper)".

A atualização funciona bem, mas qual é a interrupção? nada parece funcionar (Ctrl-C, Esc, Ctrl-I etc). Eu sempre tenho que matar o terminal, o que é uma dor.

studiohack
fonte
2
Para mim, interromper (ctrl-c) funciona bem, exceto que mata todo o processo!
precisa

Respostas:

33

Ctrl + C funciona para mim. Quando eu uso o comando F em menos, ele diz "(interromper para abortar)". A "interrupção" a que se refere é a chave que está ligada à interrupção do terminal. O comando stty -amostra as configurações relevantes do terminal:

velocidade 38400 baud; linhas 50; colunas 80; linha = 0; intr = ^ C ; sair = ^ \; apagar = ^ H; matar = ^ U; eof = ^ D; eol =; eol2 =; swtch =; start = ^ Q; parar = ^ S; susp = ^ Z; rprnt = ^ R; werase = ^ W; proxima = ^ V; flush = ^ O; min = 1; tempo = 0; -parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8ocrost onlucuc -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isican icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

É intr = ^Cisso que mostra que a interrupção é gerada por Ctrl + C.

Se você faz stty -ao que mostra?

Randy Orrison
fonte
1
diz intr = ^ C. Aha !! na verdade, é Ctrl-shift-c - ou seja, em maiúsculas. Obrigado pela ajuda
4
Isso é estranho - nunca imaginei que Ctrl + Shift fosse diferente de apenas Ctrl. O meu mostra C maiúsculo, mas Ctrl + c (sem mudança) funciona bem.
Randy Orrison 25/10/2009
4
Eu nunca usei um sistema que tratasse ctrl-c e ctrl-C de forma diferente também. Apenas um ponto de dados.
25909 CarlF
1
Estou tendo o mesmo problema e nem ctrl-c nem ctrl-shift-c funcionam. Isso poderia ter algo a ver com o fato de eu estar executando menos dentro de uma sessão de tela?
11133 jenming
2
Isso funciona para mim: 'ctrl-shift-c' mude para o modo normal e simplesmente entre qpara sair
Mohammad Ali Akbari
2

Como o @RandyOrrison mencionou, ^C( control + c ) é o caractere de interrupção apropriado . Embora, a forma como lessresponde a esse sinal varie com base nas opções fornecidas no tempo de execução.

Normalmente, um personagem de interrupção causas lesspara parar o que quer que está fazendo e voltar ao seu comando prompt (ou seja, não o / tty do terminal prompt).

Se, em vez disso, você deseja sinalizar lesspara sair e retornar ao prompt do terminal / tty , use a opção -Kou --quit-on-intr. Isso fará com lessque saia imediatamente (com status 2) quando um caractere de interrupção (geralmente ^C) é digitado.

menos página de manual

-K , --quit-on-intr

Faz com que menos saia imediatamente (com status 2) quando um caractere de interrupção (geralmente ^ C) é digitado. Normalmente, um caractere de interrupção faz com que menos pare o que está fazendo e retorne ao prompt de comando. Observe que o uso dessa opção torna impossível retornar ao prompt de comando a partir do comando "F".

less -K [filename]...
less --quit-on-intr [filename]...
Travis Clarke
fonte
2

Ctrl + Cnão funcionou para mim. No entanto, consegui interromper o processo q.

Carsten
fonte
-1

Tente Shift + Ctrl + C, eu tive o mesmo problema e precisava fazer Ctrl + Z-> fg-> Qpara sair.

hjeannin
fonte
Não há necessidade de colocar lessem segundo plano e retomá-lo fgantes de sair. Você poderia ter pressionado qimediatamente.
dirdi 27/09
-1

Eu estava preso menos, sem discussão do que o arquivo que eu queria verificar rapidamente no meu terminal, Ctrl-c, Ctrl shift-c, nada funcionou. Ctrl-z fez o trabalho :)

Pantoufle
fonte
^ Z não mata ou sai, lessmas para e o coloca em segundo plano para ser retomado mais tarde. Portanto, essa não é uma resposta para a pergunta.
dirdi 27/09