Следующее работает, как ожидалось. (не хочу использовать nmap) Мне нужно использовать команду nc (или любую другую встроенную CentOS) в сценарии оболочки, чтобы проверить порт 6379 удаленного сервера. Я хочу, чтобы скрипт быстро завершил работу, если не получил ответа менее чем за 1 секунду. Но похоже, что nc будет ждать слишком долго, прежде чем выйти с кодом выхода 1
Как «быстро» проверить, слушает ли порт?
# time nc -z 1.2.3.4 1234
real 0m21.001s
user 0m0.000s
sys 0m0.000s
# echo $?
1
# time nc -z 1.2.3.4 6379
Connection to 1.2.3.4 6379 port [tcp/*] succeeded!
real 0m0.272s
user 0m0.000s
sys 0m0.008s
# echo $?
0
nc
имеет -w
возможность настройки тайм-аута. Пытаться
time nc -w 1 -z 1.2.3.4 1234