Я использую команду nc
в своем Linux-боксе, как показано ниже, чтобы проверить, прослушивает порт;Как отобразить возвращаемое значение nc в скрипте оболочки Linux?
Это отображает сообщение об успешном:
nc -z 192.168.0.2 9000
Это показывает 0:
echo $?
Я объединил это в сценарий оболочки .sh файл, как показано ниже;
#!/bin/sh
nc -z 192.168.0.2 9000
echo $?
Это показывает 1
вместо ожидаемого 0
. Опять же, если я изменяю свой скрипт, как показано ниже, он работает;
#!/bin/sh
echo nc -z 192.168.0.2 9000
echo $?
Но здесь проблема в том, что она отображает сообщение об успешном завершении на одном, а затем отображает 0 в следующей строке. Я не хочу сообщения об успехе, и я ожидаю 0. Что здесь не так и как я могу это исправить?
http://stackoverflow.com/questions/4922943/test-from-shell-script-if-remote-tcp-port-is-open – Dan