我有一个要在 Linux 中运行的 sh。
但是我使用的是 Windows,所以我必须能够在 Windows 中运行它
有一段代码执行以下操作
while ! nc -z localhost 3300; do
echo "Waiting for MariaDb"
sleep 0.1
done
但是由于 nc 不起作用,我无法在 Windows 中复制它。
精确命令的替代方法是什么?
答案1
我相信你可以用基本方法做到这一点telnet
,但 powershell 可能有更好的方法。这是在 bash 中可以做到的:
$ exit=0 ; while (( exit != 1)) ; do { echo "open 127.0.0.1 22" ; sleep 2; } | \
telnet 2>/dev/null | grep -q '^Connected to 127.0.0.1.' && exit=1 || echo 'Waiting for SSH...' ; done
Waiting for SSH...
Waiting for SSH...
Waiting for SSH...
Waiting for SSH...
Waiting for SSH...