0
我想等待我的碼頭容器啓動一些命令。爲什麼此條件不會中斷
我做如下:
#!/bin/bash
DOCKER_IP=192.168.99.100
ES_PORT=9300
docker-compose up -d
while [ -z "$(nc -z $DOCKER_IP $ES_PORT)" ]; do
sleep 1
done
echo "Do some stuff now it's up !"
我已經與cat -e
的nc -z
返回的是空的檢查,不帶引號,以[ ! -n $(nc ...)]
作爲條件表達式...
當nc
返回不是空的,我有Connection to 192.168.99.100 port 9300 [tcp/vrace] succeeded!
在循環中,它永遠不會退出。
爲什麼這個簡單的循環條件不起作用?