如果可以在一个屏幕上显示整个文件,则减少输出到标准输出


13

more传递的文件的内容可以显示在一个屏幕上时,它只是将文件的内容写到stdout而不进行分页。如果文件无法在一个屏幕上显示,请对其进行more分页。

less如果正在使用的文件可以显示在一个屏幕(-F)上,则有一个选项可以退出,并且它具有- more仿真功能,其行为类似于该-F标志,但是这些选项似乎都不会导致less写入文件的内容确定内容是否可以在一个屏幕上显示。

less如果文件的内容可以放在一个屏幕上并像往常一样对页面进行分页,如何将文件的内容写入stdout?

less  more 

Answers:


16

使用less -FX。来自man less

   -F or --quit-if-one-screen
          Causes less to automatically exit if the entire file can be dis-
          played on the first screen.

   -X or --no-init
          Disables sending the termcap initialization and deinitialization
          strings  to  the  terminal.   This is sometimes desirable if the
          deinitialization string does something unnecessary, like  clear-
          ing the screen.

为什么-F只能使用-X
杰西

2
@Jesse如果没有-X,它实际上可以正常工作,只是没有您期望的那样。由于在终端机的备用屏幕上起作用的寻呼机较少,因此,如果不禁用termcap初始化,它将在备用屏幕上启动退出。您可能会看到快速闪烁。
克里斯·唐纳

所以我看不到任何东西,echo lol | LESS=F less因为它会在备用屏幕上打印并立即切换回去?我猜是有道理的(尽管我看不到快速闪动)。谢谢。
杰西

呸! 我想知道,如果存在-F并且“使用过”,那么较少的开发人员在使用备用屏幕时会怎么想。在这种情况下,使用备用屏幕根本没有意义。
ThiefMaster 2013年

请参见unix.stackexchange.com/q/107315/85237,了解如何less -F不使用的情况下进行工作-X
约翰·梅勒
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.