Verwenden Sie netcat (Befehl nc) statt "telnet", also
cat request.txt | nc docs.python.org 80
Telnet ist ein schneller und einfacher Hack, aber netcat ist anscheinend das richtige Werkzeug für diesen Job.
Ich habe keine wirkliche Erfahrung mit telnet
aber es braucht Eingaben von der Dateiumleitung:
telnet < abc.txt
Ich kann es wie folgt dazu bringen, sich korrekt mit dem Server zu verbinden:
$ cat abc.txt
open docs.python.org 80
$ telnet < abc.txt
telnet> Trying 82.94.164.162...
Connected to dinsdale.python.org.
Escape character is '^]'.
Connection closed by foreign host.
Vielleicht können Sie herausfinden, wie Sie es dazu bringen, GET
zu akzeptieren befehlen, aber ich konnte nicht. Eine Alternative ist die Verwendung eines expect
Skript:
#!/usr/bin/expect
spawn telnet docs.python.org 80
expect "Escape character is '^]'." {
send "GET /2/license.html HTTP/1.1\nHost: docs.python.org\n\n"
}
interact
Sie können das Skript dann als telnet.exp
speichern , machen Sie es ausführbar und führen Sie es aus:
./telnet.exp > output.html