小编Sna*_*cky的帖子

Bash:循环直到命令退出状态等于0

我在本地计算机上安装了netcat,在端口25565上运行了一个服务.使用命令:

nc 127.0.0.1 25565 < /dev/null; echo $?
Run Code Online (Sandbox Code Playgroud)

Netcat检查端口是否打开,如果打开则返回0,如果关闭则返回1.

我试图写一个bash脚本无休止地循环并每秒执行上面的命令,直到命令的输出等于0(端口打开).

即使在端口打开(1变为0)之后,我当前的脚本也会无休止地循环"...".

until [ "nc 127.0.0.1 25565 < /dev/null; echo $?" = "0" ]; do
         echo "..."
         sleep 1
     done
echo "The command output changed!"
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?

linux bash loops netcat

8
推荐指数
2
解决办法
2万
查看次数

标签 统计

bash ×1

linux ×1

loops ×1

netcat ×1