J'essaie de sortir le corps du document et ses en-têtes sur stdout avec wget par wget -S -O - http://google.com
mais il montre seulement docment html.
Merci
UPD:
Travaillé ce wget --save-headers --output-document - http://google.com
wget --version
montre GNU Wget 1.11.4 Red Hat modifié
Essayez ce qui suit, aucun en-tête supplémentaire
wget -qO- www.google.com
Notez le -
final. Cela fait partie de l'argument de commande normal pour que -O
contienne un fichier, mais puisque nous n'utilisons pas >
pour diriger un fichier, il est envoyé au shell. Vous pouvez utiliser -qO-
ou -qO -
.
wget -S -O - http://google.com
fonctionne comme prévu pour moi, mais avec une mise en garde: les en-têtes sont considérés comme des informations de débogage et, en tant que tels, ils sont envoyés à erreur standard plutôt qu'à la sortie standard. Si vous redirigez la sortie standard vers un fichier ou un autre processus, vous n'obtiendrez que le contenu du document.
Vous pouvez essayer de rediriger l'erreur standard vers la sortie standard en tant que solution possible. Par exemple, dans bash
:
$ wget -q -S -O - 2>&1 | grep ...
ou
$ wget -q -S -O - 1>wget.txt 2>&1
L'option -q
supprime la barre de progression et certaines autres parties du contenu wget
de manière agaçante et bavarde.
Cela fonctionne ici:
$ wget -S -O - http://google.com
HTTP request sent, awaiting response...
HTTP/1.1 301 Moved Permanently
Location: http://www.google.com/
Content-Type: text/html; charset=UTF-8
Date: Sat, 25 Aug 2012 10:15:38 GMT
Expires: Mon, 24 Sep 2012 10:15:38 GMT
Cache-Control: public, max-age=2592000
Server: gws
Content-Length: 219
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Location: http://www.google.com/ [following]
--2012-08-25 12:20:29-- http://www.google.com/
Resolving www.google.com (www.google.com)... 173.194.69.99, 173.194.69.104, 173.194.69.106, ...
...skipped a few more redirections ...
[<=> ] 0 --.-K/s
<!doctype html><html itemscope="itemscope" itemtype="http://schema.org/WebPage"><head><meta itemprop="image" content="/images/google_favicon_128.png"><ti
... skipped ...
vous devez peut-être mettre à jour votre wget (~$ wget --version
GNU Wget 1.14 built on linux-gnu.
)
Cela ne fonctionnera pas:
wget -q -S -O - google.com 1>wget.txt 2>&1
puisque les redirections sont évaluées de droite à gauche, cela envoie html à wget.txt et l'en-tête à STDOUT:
wget -q -S -O - google.com 2>&1 1>wget.txt
Cela a fonctionné pour moi pour imprimer la réponse avec en-tête:
wget --server-response http://www.example.com/