如果我这样做ls | less
,ls
检测到它没有连接到终端,这很公平。不同之处在于less
被连接到终端。在此设置中,ls
可以生成彩色和列化输出目标终端,并less
可以正确处理它。您可以使用 使颜色正常工作ls --color=force | less -r
,但这需要更多的输入,而且它不处理列。
如果有一个开关less
可以告诉连接到它的任何东西将其视为真正的终端,那就太酷了。因此,您可以ls | less -T
在less
.
有没有做过这样的事情?
或者less
像它这样的寻呼机真的可以自己做到这一点,还是需要 shell 的合作?例如,shell 是否需要设置一个伪终端ls
来连接?