Быстрая проверка открытого порта

Следующее работает как положено. (не хочу использовать 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

1 ответ

Решение

nc имеет -w опция для настройки таймаута. Пытаться

time nc -w 1 -z 1.2.3.4 1234
Другие вопросы по тегам