ich ein Bash-Programm, das überprüft, ob ein Dämon in einem bestimmten Port arbeitet:Alternative in CentOS 7 für "nc -Z"
nc -z localhost $port > /dev/null
if [ "$?" != "0" ]
then
echo The server on port $port is not working
exit
fi
Dieses Programm perfekt in CentOS funktioniert 6. Es scheint jedoch, dass CentOS 7 hat die grundlegende Implementierung nc
Befehl geändert (CentOS 6 scheint Netcat und CentOS 7 verwendet ein anderes Ding namens nCAT verwenden) und jetzt die -z
Schalter nicht funktioniert:
$ nc -z localhost 8080
nc: invalid option -- 'z'
in CentOS zum man nc
Seite Suche 7 Ich sehe keine klare Alternative ernative zu -z
. Irgendwelche Vorschläge, wie ich mein Bash-Programm reparieren sollte, damit es in CentOS 7 funktioniert?
der Nähe Flag In Bezug auf die ausgelöst wurde, lassen Sie mich klarstellen, dass Die Frage * ist * über die Programmierung (insbesondere Bash-Programmierung). – fgalan
Wenn Sie sich nicht für das Tool interessieren, das Sie verwenden, können Sie wahrscheinlich die Antworten unter http://stackoverflow.com/questions/4922943/test-from-shell-script-i-f-remote-tcp-port-is verwenden -open –
'if [" $? " ! = "0"] 'ist ein Antipattern; du willst einfach 'if nc -z localhost $ port>/dev/null' – tripleee