Há duas coisas envolvidas aqui.
-
Possivelmente você está usando dois
nc
s diferentes. Um mudo e um verboso. Nesse caso, para o mudo, use a opção-v
para que ele fale ou use o código de saída$?
. (0 para sucesso, 1 para falha.) -
Se 1. não for o caso, use
-v
ou$?
de qualquer forma. Difícil dizer qual pode ser a razão desse comportamento misto para diferentes portas.
Ilustração:
$ nc -z localhost 8080
$ echo $?
0
$ nc -z localhost 8081
$ echo $?
1
$ nc -zv localhost 8081
nc: connect to localhost port 8081 (tcp) failed: Connection refused
nc: connect to localhost port 8081 (tcp) failed: Connection refused
$ nc -zv localhost 8080
Connection to localhost 8080 port [tcp/http-alt] succeeded!