我正在检查远程服务器上的进程是否已被杀死。我正在使用的代码是:
if [ `ssh -t -t -i id_dsa headless@remoteserver.com "ps -auxwww |grep pipeline| wc -l" | sed -e 's/^[ \t]*//'` -lt 3 ]
then
echo "PIPELINE STOPPED SUCCESSFULLY"
exit 0
else
echo "PIPELINE WAS NOT STOPPED SUCCESSFULLY"
exit 1
fi
但是,当我执行此操作时,我得到:
: integer expression expected
PIPELINE WAS NOT STOPPED SUCCESSFULLY
1
返回的实际值为“1”,没有空格。我通过以下方式进行了检查:
vim <(ssh -t -t -i id_dsa headless@remoteserver.com "ps -auxwww |grep pipeline| wc -l" | sed -e 's/^[ \t]*//')
然后是 ":set list",它只显示整数和换行符作为返回值。
我不知道为什么这不起作用。