我想檢查連接埠連接並將nc
結果轉發到文字檔案。
stdout
工作正常。stderr
是空的,如果你不使用-v
(我不想要),所以我想配置錯誤輸出,例如Servername: no connection
nc
是版本v1.10-41+b1。
這是命令
nc -z -G 5 $Servername $Portname >> telnet_log.txt 2>&1
答案1
nc
在 macOS 上,如果無法連線到主機,則會以非零退出狀態退出。您可以在 - 語句中使用此事實if
來輸出您自己的錯誤訊息:
if ! nc -z -G 5 "$server" "$port"; then
printf '%s: no connection (port=%s)\n' "$server" "$port" >&2
fi >>nc-results.log 2>&1
如果連接成功,這會將nc
標準輸出上產生的任何資料新增至檔案中nc-report.log
,但如果未連接,則會新增您自己的自訂錯誤。