-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.
例如PAGER="less -X" man man,可用于测试它,如果您发现此行为更可取,您可能会考虑PAGER永久设置此值。
我相信这不是关于
man
它本身,而是关于您选择的寻呼机(PAGER
环境变量)与正在使用的终端相结合。我猜你的寻呼机可能是
less
(现在典型的默认寻呼机并符合描述)。less
有一个选项-X
可以让您按照您正在寻找的方式进行行为。例如
PAGER="less -X" man man
,可用于测试它,如果您发现此行为更可取,您可能会考虑PAGER
永久设置此值。如果您的寻呼机运行较少(这很常见),则无需处理修改寻呼机,只需执行 I/O 重定向:
man <whatever you want to man> | cat -
这会将副本打印到终端,以便您可以在需要时向上滚动。
不仅如此
less
,其他文本应用程序也vim
表现出同样令人讨厌的特性,我所做的只是删除终端支持terminfo
数据库中相关命令的能力。这些命令是
smcup
和rmcup
,它们旨在允许打开和关闭cup
允许命令(光标位置)的移动。这是我用来自动化任务的 shell 函数,它至少适用于 Solaris 和可能的大多数 Linux 发行版:
如果您的终端条目没有回退到,您应该在脚本中
xterm
替换为正确的终端名称。xterm
您可以通过管道将输出传递给
cat
命令或者使用它来代替默认的寻呼机,就像在这个例子中它自己调用 man 一样:
在不修改寻呼机的情况下,一种可以在大多数环境中工作的管道解决方案:
示例
man ls
man ls | cat
man ls | more
man ls | grep somestring
现在是 2016 年,只需打开第二个终端或选项卡或窗口或在线阅读该人 ..
即使在我的服务器 (FreeBSD) 上,我也会安装 X 和 xfce。然后我为终端模拟器分配了一个大缓冲区(例如 10 000 行),以便我可以在其中一个模拟器中完全滚动出手册页,并使用单独的终端实例来组装命令。工作一种享受。