所以我想通过将命令的输出传递到| less -S
但是,如果我这样做,一旦退出 less,命令的输出将不会保留在命令行历史记录中
有没有办法配置 less 以在退出时将命令的输出保留在历史记录中?
例如。如果您查看git diff
,您可以执行水平滚动然后退出,但输出仍保留在历史记录中,您可以在其中键入新命令...我基本上想为我的自定义 bash 命令模拟这个。此外,git diff
它在现场执行水平滚动(即不使用新屏幕)并且命令行历史记录仍然可见,而less
它会在自己的屏幕上执行,您将无法看到命令行历史记录,而“减”。是否也可以在 less 中模拟这种类似 git diff 的机制?
如果有其他没有使用的解决方案,less
请随时将其扔掉
更新的问题
所以假设我这样做:
cat loremipsum | less -FRSX
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sed
然后我按两次向右,使其向右滚动两次。然后我按 q 退出。保留在屏幕上的输出将是:
cat loremipsum | less -FRSX
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sed
ESCOC
dictum diam. Nullam quis urna ullamcorper, accumsan quam vitae, aliquet
ESCOD
nisl. Maecenas vitae lorem orci. Ut vel est erat. Cras quis sagittis sapien, ac volutpat metus.
username@server:~/httpdocs$
但是在 git diff 中,当您执行相同操作然后按 q 时,只有最后一部分(即我向右滚动的屏幕的最后一部分)
git diff
nisl. Maecenas vitae lorem orci. Ut vel est erat. Cras quis sagittis sapien, ac volutpat metus.
username@server:~/httpdocs$
将留在屏幕上
我如何让这也发生