退出命令在显示服务信息后无法退出 bash shell?
Exit command can't exit bash shell after showing a service info?
如此简单的 bash 脚本,仅包含两行。
cat show.sh
systemctl status cron
exit 0
在终端中使用 root 执行它。
bash show.sh
有关 cron.service 的所有信息显示在终端上。
cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: ena
Active: active (running) since Sat 2019-08-10 06:51:18 EDT; 13h ago
Docs: man:cron(8)
为什么show.sh不是退出状态,添加点击q
会退出show.sh,为什么exit 0
不执行?如何触发?
我在终端上的 expection:show 关于 cron.service 的信息并退出 show.sh 脚本。
我的 show.sh 完成了一半,只需在终端上显示有关 cron.service 的信息。
一个长脚本自动化一个工作是有意义的,上面两行是显示整个脚本状态的最后一步。
将--no-pager
传给systemctl
,如下:
systemctl --no-pager status cron
否则,systemctl 会运行 less
(或类似的程序),直到按下 q
才会退出;因此,控制权不会直接交还给您的脚本。
在我们的姊妹网站上查看相关问题Unix & Linux at Can I prevent service foo status
from paging its output through less
?
如此简单的 bash 脚本,仅包含两行。
cat show.sh
systemctl status cron
exit 0
在终端中使用 root 执行它。
bash show.sh
有关 cron.service 的所有信息显示在终端上。
cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: ena
Active: active (running) since Sat 2019-08-10 06:51:18 EDT; 13h ago
Docs: man:cron(8)
为什么show.sh不是退出状态,添加点击q
会退出show.sh,为什么exit 0
不执行?如何触发?
我在终端上的 expection:show 关于 cron.service 的信息并退出 show.sh 脚本。
我的 show.sh 完成了一半,只需在终端上显示有关 cron.service 的信息。
一个长脚本自动化一个工作是有意义的,上面两行是显示整个脚本状态的最后一步。
将--no-pager
传给systemctl
,如下:
systemctl --no-pager status cron
否则,systemctl 会运行 less
(或类似的程序),直到按下 q
才会退出;因此,控制权不会直接交还给您的脚本。
在我们的姊妹网站上查看相关问题Unix & Linux at Can I prevent service foo status
from paging its output through less
?