Linux 命令“less”的中断键是什么

Linux 命令“less”的中断键是什么

当您使用 less 执行 shift-f 时,您可以实时看到文件更新,并且会收到“等待数据...(中断中止)”消息。

更新工作正常,但中断是什么?似乎什么都不起作用(Ctrl-C、Esc、Ctrl-I 等)。我总是不得不关闭终端,这很麻烦。

答案1

Ctrl+C对我来说很管用。当我在 less 中使用 F 命令时,它显示“(中断以中止)”。它所指的“中断”是与终端中断绑定的任何键。该命令stty -a显示相关的终端设置:

速度 38400 波特;行 50;列 80;行 = 0;内联 = ^C; 退出 = ^; 擦除 = ^H; 杀死 = ^U; eof = ^D; eol = ; eol2 = ; swtch = ; 开始 = ^Q; 停止 = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; 分钟 = 1; 时间 = 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 -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

intr = ^C表明中断是由Ctrl+产生的C

如果你这么做stty -a会显示什么?

答案2

Ctrl + C对我来说不起作用。不过,我能够使用 停止该过程q

答案3

正如 @RandyOrrison 提到的,^C控制+C)是适当的打断字符。但是,less响应此信号的方式将根据执行时提供的选项而有所不同。

通常情况下,中断字符会导致less停止正在执行的操作并返回到它是命令提示符(即不是终端/tty提示符)。

相反,如果你想less发出退出信号并返回终端/tty 提示符,则应使用-K--quit-on-intr选项。这将导致在输入less中断字符(通常是)时立即退出(状态为 2) 。^C

更少的手册页

-K , --quit-on-intr

当输入中断字符(通常是 ^C)时,会导致 less 立即退出(状态为 2)。通常,中断字符会导致 less 停止其正在执行的操作并返回到其命令提示符。请注意,使用此选项会导致无法从“F”命令返回到命令提示符。

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

答案4

唯一正确的答案是 Ctrl + X。

否则,在管道操作中像find /var/log -name "*.log" | xargs lessCtrl+C 这样的操作将终止 less 并退出以提示。

相关内容