Да, я также обнаружил, что nc не поддерживает -z. Интересно, почему они бросили это. Вы можете установить более старую версию ncat или просто использовать nmap.
Nmapnmap -sT -p <port>
В Руководстве по написанию сценариев Advanced Bash в главе 5 говорится, что внутри одинарных кавычек особое значение $
отключено, поэтому раскрытие переменных не выполняется. Вы можете попробовать заключить аргумент curl
в двойные кавычки "... "
вместо одинарных.