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


29

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

更新工作正常,但是中断是什么?似乎没有任何效果(Ctrl-C,Esc,Ctrl-I等)。我总是不得不杀死终端,这很痛苦。


2
对我而言,中断(ctrl-c)可以正常工作,只是它会杀死整个过程!
taranaki

Answers:


33

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

速度38400波特; 第50行;第80栏;行= 0; intr = ^ C ; 退出= ^ \; 擦除= ^ H; 杀= ^ U; eof = ^ D; eol =; eol2 =; swtch =; 开始= ^ Q; 停止= ^ S; susp = ^ Z; rprnt = ^ R; werase = ^ W; lnext = ^ V; 冲洗= ^ 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 -iutcr8 opost -olcuc -ocrnl onl -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做,将显示什么?


1
它说intr = ^ C。啊哈!实际上是Ctrl-shift-c-即大写。感谢您的帮助

4
这很奇怪-我从不知道Ctrl + Shift与Ctrl不同。我的显示大写C,但Ctrl + c(不移动)正常工作。
兰迪·奥里森

4
我也从未使用过将ctrl-c和ctrl-C区别对待的系统。只是一个数据点。
CarlF

1
我遇到了同样的问题,并且ctrl-c和ctrl-shift-c都不起作用。这可能与我在屏幕会话中运行较少的事实有关吗?
詹明2013年

2
这对我有用:'ctrl-shift-c'切换到普通模式,只需输入q即可退出
Mohammad Ali Akbari

2

正如@RandyOrrison提到的那样,^Ccontrol + c)是适当的中断字符。但是,如何less响应此信号将根据执行时提供的选项而有所不同。

通常,一个中断字符会导致less其正在执行的操作停止并返回命令提示符(即不是 terminal / tty提示符)。

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

更少的联机帮助

-K , --quit-on-intr

键入中断字符(通常为^ C)时,较少导致立即退出(状态2)。通常,使用中断字符可以减少执行任何操作并返回其命令提示符的可能性。请注意,使用此选项将无法从“ F”命令返回到命令提示符。

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

2

Ctrl + C没有为我工作。但是,我可以通过停止该过程q


-1

尝试Shift + Ctrl + C,我有同样的问题,需要做Ctrl + Z-> fg-> Q退出。


退出前,无需放入less背景并使用恢复它fg。您可能q马上就按下了。
dirdi

-1

我被困在没有参数的情况下,比我想从终端快速检查文件Ctrl-c,Ctrl shift-c没什么用。Ctrl-z完成了工作:)


^ Z不会杀死或退出,less但会停下来并将其置于后台以供以后恢复。因此,这不是问题的答案。
dirdi
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.