我已SYSTEMD_PAGER
设置为 cat,以避免长行被截断。但是,当我输入 时systemctl status <service>
,它现在插入一个省略号,而不是在末尾截断长行仍然不显示完整线路!
联机帮助页说通过-l
或--full
将修复此问题 - 确实如此 - 但我怎样才能使这种(正确的)行为成为默认行为?
没有提到我可以设置来启用此功能的环境变量,并且不可能设置 shell 别名,因为别名中不能有空格,例如alias 'systemd status'='systemd status -l'
.
我不想有一个不同名称的别名 - 我只想-l
为systemd status
.是否可以?
答案1
不一定-l
要在 the 之后,status
所以您可以简单地使用
alias systemctl='systemctl -l'
当然,这也使其成为所有其他子命令的默认设置。
答案2
当别名的功能不够时,下一步就是使用 shell 函数。像这样,例如:
systemctl() {
if [ "$1" = "status" ]
then
/bin/systemctl -l "$@"
else
/bin/systemctl "$@"
fi
}