我正在编写一个脚本来关闭 Apache 服务,执行某个功能,然后将其重新打开。
我想为每个过程获得某种类型的交互式确认。我不熟悉 printf,但我相信我想做的事情需要它。
下面是脚本的一部分。当我关闭服务时,我希望它说出它将做什么,然后在同一行上报告“正常”或“不正常”。
IE。
Shutting down Apache service:
几秒钟后...
Shutting down Apache service: OK
#!/bin/bash
# Turn off Apache
echo "Shutting down Apache service:'
service apache2 stop
if ( $(ps -ef | grep -v grep | grep apache2 | wc -l) > 0 )
then
echo "NOT OK!"
else
echo "OK!"
fi
答案1
在 bash 中,您可以使用不打印行尾-n
的选项。echo
echo -n Shutting down Apache service:
或者,使用printf
printf '%s' 'Shutting down Apache service'
要在 中包含换行符printf
,请将其放入\n
模板中
printf '%s\n' 'NOT OK!'