我想所有正在運行的服務的輸出列表,使用下面的代碼片段在我的Linux版本(CentOS)框對應的包和狀態: -抑制控制檯輸出的錯誤,同時運行Shell腳本
for i in $(service --status-all | grep -v "not running" | grep -E running\|stopped | awk '{print $1}'); do
packagename=$(rpm -qf /etc/init.d/$i)
servicestatus=$(service --status-all | grep $i | awk '{print $NF}');
echo $tdydate, $(ifconfig | sed -En 's/127.0.0.1//;s/.*inet (addr:)?(([0-9]*\.){3}[0-9]*).*/\2/p'), $i, $packagename, $servicestatus >> "$HOME/MyLog/running_services.csv"
done
然而,當我運行該腳本,我得到的控制檯這樣的錯誤: -
error: file /etc/init.d/cupsd: No such file or directory
error: file /etc/init.d/hald: No such file or directory
error: file /etc/init.d/lvmetad: No such file or directory
error: file /etc/init.d/postmaster: No such file or directory
也許,這是當它試圖在/etc/init.d目錄查找服務名稱。但是,這不適用於所有服務。 現在,我該如何抑制這個控制檯輸出?我不想在控制檯上看到這個。任何指針?