如何在linux中禁止从命令行显示以前查看过的代码/输出?


0

例如,如果我查看a.txtlinux中调用的一段doc 。这是我的提示:

user $ less a.txt
This is a document named a.txt, here is what happened when I press 'q'
user $ 

小文档不会打扰我,但是当我只查看2000行长度的代码时,除了查看之外,我从以前的命令中看不到任何内容$history

如何在exists('q')上停止显示doc / code ?


你可以禁用你的历史,你没试过吗?
echo'set

Answers:


1

通常,您要求的行为是默认行为。较少的命令使用名为altscreen的功能在运行时写入不同的缓冲区。退出时,将恢复上一个屏幕,并且不会显示较少的输出。

此功能取决于您使用的终端仿真器(xterm,dtterm,...)以及如何在shell中设置TERM环境变量。试着echo $TERM检查它是不是愚蠢的例子。


0

如上所述,您所询问的是预期的正常行为。如果使用-X标志运行不那么具体,屏幕不会被清除:

少-X文件名

你可以专门检查以下内容:

1)如果设置了任何别名,则将less设置为less -X。只需运行命令别名即可

2)检查env变量LESS,如果它设置为-XF,则取消设置:

[root @ host] #env | grep LESS

LESS = -xF

3)检查env变量并在其存在时取消设置PAGER ='less -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.