Qual è la chiave di interruzione per il comando Linux "less"


29

Quando si fa shift-f con meno, è possibile vedere l'aggiornamento del file in tempo reale e viene visualizzato il messaggio "In attesa di dati ... (interrompere per interrompere)".

L'aggiornamento funziona bene, ma qual è l'interrupt? nulla sembra funzionare (Ctrl-C, Esc, Ctrl-I ecc.). Devo sempre uccidere il terminale, il che è un dolore.


2
Per me, interrompere (ctrl-c) funziona bene, tranne per il fatto che uccide l'intero processo!
Taranaki,

Risposte:


33

Ctrl + C funziona per me. Quando uso il comando F in meno, dice "(interrompere per interrompere)". L '"interrupt" a cui si riferisce è qualunque chiave sia associata all'interrupt del terminale. Il comando stty -amostra le impostazioni del terminale rilevanti:

velocità 38400 baud; file 50; colonne 80; linea = 0; intr = ^ C ; quit = ^ \; cancella = ^ H; kill = ^ U; eof = ^ D; eol =; eol2 =; swtch =; inizio = ^ Q; stop = ^ S; susp = ^ Z; rprnt = ^ R; werase = ^ W; lnext = ^ 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 -iutf8 opost -olccr -ocrl -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

È quello intr = ^Cche mostra che l'interrupt è generato da Ctrl + C.

Se fai stty -acosa mostra?


1
dice intr = ^ C. Aha !! in realtà è Ctrl-shift-c - cioè maiuscolo. Grazie per l'aiuto

4
È strano - non ho mai saputo che Ctrl + Maiusc fosse diverso dal solo Ctrl. Il mio mostra la maiuscola C, ma Ctrl + c (senza maiusc) funziona bene.
Randy Orrison,

4
Non ho mai usato un sistema che trattasse Ctrl-C e Ctrl-C in modo diverso, neanche. Solo un punto dati.
CarlF

1
Sto riscontrando lo stesso problema e né ctrl-c né ctrl-shift-c funzionano. Questo potrebbe avere qualcosa a che fare con il fatto che sto correndo meno all'interno di una sessione dello schermo?
jenming,

2
Questo funziona per me: 'ctrl-shift-c' passa alla modalità normale e semplicemente entra qper uscire
Mohammad Ali Akbari

2

Come accennato da @RandyOrrison, ^C( control + c ) è il carattere di interruzione appropriato . Tuttavia, la lessrisposta a questo segnale varierà in base alle opzioni fornite al momento dell'esecuzione.

Normalmente, un carattere di interruzione provoca lessl'arresto di qualunque cosa stia facendo e ritorni al suo prompt dei comandi (cioè non al prompt terminal / tty).

Se invece vuoi segnalare lessdi uscire e tornare al prompt terminal / tty , dovresti usare l' opzione -Ko --quit-on-intr. Ciò causerà la lesschiusura immediata (con stato 2) quando ^Cviene digitato un carattere di interruzione (di solito ).

meno manpage

-K , --quit-on-intr

Fa sì che less esca immediatamente (con stato 2) quando viene digitato un carattere di interruzione (di solito ^ C). Normalmente, un carattere di interruzione fa sì che meno fermi qualsiasi cosa stia facendo e ritorni al suo prompt dei comandi. Si noti che l'uso di questa opzione rende impossibile tornare al prompt dei comandi dal comando "F".

less -K [filename]...
less --quit-on-intr [filename]...

2

Ctrl + CNon ha funzionato per me. Tuttavia, sono stato in grado di interrompere il processo con q.


-1

Prova Shift + Ctrl + C, ho avuto lo stesso problema e dovevo fare Ctrl + Z-> fg-> Qper uscire.


Non è necessario mettere lessin secondo piano e riprenderlo fgprima di uscire. Avresti potuto premere qsubito.
dirdi

-1

Ero bloccato in meno senza alcun argomento rispetto al file che volevo controllare velocemente dal mio terminale, Ctrl-c, Ctrl shift-c non funzionava. Ctrl-z ha fatto il lavoro :)


^ Z non uccide o esce lessma si ferma e lo mette in secondo piano per essere ripreso in seguito. Pertanto, questa non è una risposta alla domanda.
dirdi
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.