Utilisez netcat (commande nc) plutôt que "telnet", donc
cat request.txt | nc docs.python.org 80
Telnet est un hack rapide et facile, mais netcat est, apparemment, le bon outil pour le travail.
Je n'ai pas vraiment d'expérience avec telnet
mais il prend l'entrée de la redirection de fichier :
telnet < abc.txt
Je peux le faire se connecter correctement au serveur comme suit :
$ 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.
Peut-être que vous pouvez comprendre comment le faire accepter le GET
commande mais je ne pouvais pas. Une alternative consiste à utiliser un expect
script :
#!/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
Vous pouvez ensuite enregistrer le script sous telnet.exp
, rendez-le exécutable et lancez-le :
./telnet.exp > output.html