我在 bash 中完成了这个脚本:
probe='nc -zv localhost 19997'
output=' grep -c 'succeeded' $probe'
if [ $output == '0' ]
then
echo 'Client online'
else
echo 'Offline'
fi
该脚本的目的是通过 netcat 检查客户端是否通过反向 ssh 连接到端口 19997 上的我的服务器,如果这是检测器,则打印一条肯定消息。数控会打印
Connection to localhost 19997 port [tcp/*] succeeded!
如果它检测到客户端,我只想 grep 'succeeded' 作为已建立连接的关键字,并通过 grep 的退出代码触发 if 语句。但是当我运行这个脚本时我得到:
test.sh: line 3: [: too many arguments
我哪里做错了?