我正在尋找一種在 Fish shell 中開啟 TCP 連線的方法。
在 bash 中,我可以執行以下操作來開啟 TCP 連線。這是未安裝 telnet 時的快速 telnet 類型測試。
$ echo > /dev/tcp/127.0.0.1/80 && echo up
up
連線失敗
aaron@aaron-pc: ~
$ echo > /dev/tcp/127.0.0.1/81 && echo up
bash: connect: Connection refused
bash: /dev/tcp/127.0.0.1/81: Connection refused
在魚中我嘗試了以下方法。
echo > /dev/tcp/127.0.0.1/80; and echo up
An error occurred while redirecting file '/dev/tcp/127.0.0.1/80'
open: No such file or directory
我猜 bash 具有tcp
在需要時創建設備的功能,而 Fish 使用其他機制。
這是一些關於 bash 的文檔/dev/tcp
https://www.linuxjournal.com/content/more-using-bashs-built-devtcp-file-tcpip
https://stackoverflow.com/a/19866239/619760
答案1
魚不會這樣做。您將需要使用netcat
專為網路連線而設計的工具,或使用提供遠端網路端點的檔案層級存取的作業系統(例如 GNU Hurd 的socketio
翻譯器)。