![有没有办法将 bash 配置为始终页面输出?](https://linux22.com/image/486515/%E6%9C%89%E6%B2%A1%E6%9C%89%E5%8A%9E%E6%B3%95%E5%B0%86%20bash%20%E9%85%8D%E7%BD%AE%E4%B8%BA%E5%A7%8B%E7%BB%88%E9%A1%B5%E9%9D%A2%E8%BE%93%E5%87%BA%EF%BC%9F.png)
我想配置 bash 以分页显示所有命令的输出。本质上,我希望 bash 表现得好像我输入的每个命令都以“| less”结尾。这可能吗?
答案1
你可以这样做:
$ bind '"\C-j": "|less\C-m"'
或者把这个放到你的~/.inputrc
:
"\C-j": "|less\C-m"
然后,当您想要执行操作时,ls -l|less
您可以键入ls -l
并按,control-J
而不是<enter>
。
我不建议在 bind 命令(或 .inputrc 文件中)中交换 j 和 m。每次按下时,<enter>
您都会被|less
添加,这可能非常烦人。
答案2
我不确定这是否可行,但你绝对可以在 .bashrc 中执行如下操作,让事情变得更轻松:
alias p='less'
ll |p
然后变成分页列表。
编辑:请注意,这仍然不适用于要发送到 STDERR 的内容。您需要执行以下操作: errorcommand 2>&1 |p