Ich suche nach einer Möglichkeit, TCP-Verbindungen in der Fish-Shell zu öffnen.
In Bash kann ich Folgendes tun, um eine TCP-Verbindung zu öffnen. Dies ist ein schneller Telnet-Test, wenn Telnet nicht installiert ist.
$ echo > /dev/tcp/127.0.0.1/80 && echo up
up
Eine fehlgeschlagene Verbindung
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
Bei Fisch habe ich folgendes versucht.
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
tcp
Ich vermute, dass Bash die Funktion hat , bei Bedarf ein Gerät zu erstellen, und Fish einen anderen Mechanismus verwendet.
Hier ist ein Teil der Dokumentation zu Bash und/dev/tcp
https://www.linuxjournal.com/content/more-using-bashs-built-devtcp-file-tcpip
https://stackoverflow.com/a/19866239/619760
Antwort1
fish macht das nicht. Sie müssen netcat
ein Tool verwenden, das für Netzwerkverbindungen entwickelt wurde, oder ein Betriebssystem, das Dateizugriff auf Remote-Netzwerkendpunkte bietet (wie etwa socketio
den Übersetzer von GNU Hurd).