1

オンライン ファイルのヘッド セクションを出力する perl インライン スクリプトが必要です。例えば:

perl -MLWP::Simple -e "print head \"http:stackoverflow.com\""

しかし、この印刷結果は 1 行になります。別の行を印刷する必要があります。

4

4 に答える 4

3

もう一つ――

perl -MLWP::Simple -e 'print head("http://stackoverflow.com")->as_string'

更新、応答/出力–

HTTP/1.1 200 OK
Cache-Control: public, max-age=60
Connection: close
Date: Fri, 25 Feb 2011 21:49:45 GMT
Vary: *
Content-Length: 194708
Content-Type: text/html; charset=utf-8
Expires: Fri, 25 Feb 2011 21:50:46 GMT
Last-Modified: Fri, 25 Feb 2011 21:49:46 GMT
Client-Date: Fri, 25 Feb 2011 21:49:46 GMT
Client-Peer: 64.34.119.12:80
Client-Response-Num: 1

完全を期すために、もう一度更新します。引数を取るために一般化–</p>

perl -MLWP::Simple -e 'print head(shift||die"Give a URL\n")->as_string'

perl -MLWP::Simple -e 'print head(shift||die"Give a URL\n")->as_string' http://stackoverflow.com

私は Perl を愛していますが、これはおそらくこのタスクのより良い解決策です–</p>

curl -I http://stackoverflow.com

この場合、curl v LWP の HEAD 応答は異なります。:)

于 2011-02-25T21:43:18.207 に答える
1

あなたはリストに参加する必要がありますhead()returns。

perl -MLWP::Simple -e "print join qq(\n), head q(http://stackoverflow.com)"
text/html; charset=utf-8
196503
1298659282
1298659342
于 2011-02-25T18:42:22.823 に答える
1

呼び出しはhead()リストを返します。

そのリストは、印刷されるとき、個々の要素を連結することによって印刷されます。

代わりに、"\n" で結合します。

perl -MLWP::Simple -e "print join('\n', head(\"http:stackoverflow.com\"));"

別の方法として、各要素に「\n」を追加することもできます (末尾にも「\n」が出力されるため、これの方が適しています)。

perl -MLWP::Simple -e 'print map { "$_\n" } head "http:stackoverflow.com";'
于 2011-02-25T18:40:05.793 に答える