答案1
systemctl
( )的手册页man systemctl
清楚地解释了此行为,并提供了更改它的选项:
$SYSTEMD_PAGER
--no-pager
未给出时使用的寻呼机;覆盖$PAGER
.如果$SYSTEMD_PAGER
和 都$PAGER
没有设置,则依次尝试一组众所周知的寻呼机实现,包括less
(1)和more
(1),直到找到一个。如果没有发现寻呼机实现,则不会调用寻呼机。将此环境变量设置为空字符串或值“cat
”相当于传递--no-pager
。
因此,对于您的情况,解决方案是在登录时设置环境变量:
export SYSTEMD_PAGER=cat
答案2
更广泛地说,您可以在 bash 运行时配置中定义 PAGER 环境
# In .bashrc or .bash_profile
export PAGER='cat'
答案3
我经常登录到一个系统,在该系统中更改、等是一个坏主意~/root/.bashrc
。/etc/profile
而且我并不总是记得参数名称SYSTEMD_PAGER
。
cat
因此,作为一种懒惰的黑客,我只需通过or (我首选的寻呼机)管道输出less
,如下所示:
systemctl status | cat
systemctl status | less
这个技巧cat
也适用于许多其他程序。例如,如果我不想处理如何info
导航其页面,我只需这样做:
info bash | less