どのようにwgetの応答を標準出力にリダイレクトしますか?


148

私は5分ごとにPHPページcrontabwget用意しています(PHPコードを実行するためだけです)。リクエストの出力を標準wget出力に送信し、通常の出力を送信/dev/null(または非表示)したいと思います。私はwgetマニュアルでそれを見つけることができませんでした。

私は次のようなものを探しています:

wget -o stdout http://whatever.com/page.php > /dev/null

知ってる?


5
「wgetをnullにリダイレクトするにはどうすればいいですか?」
ボブスタイン14

2
@ BobStein-VisiBone正しくタイトルが付けられていると思います。wget-edがに移動しstdout、法線がstdoutに移動することを望んでいましたnull(つまり、通常は表示されるものを無視し、代わりに応答本文を出力します)。
ショーンアドキンソン14

6
ああ!私は訂正します。私は使い始めましたwget http://example.com/page.php -qO- (これは大文字です)。これは、応答本文のみを標準出力します。それはあなたが望んだことですか?
ボブスタイン14

回答:


157

wget -O - http://whatever.com/page.php > /dev/null

または、標準エラー出力もリダイレクトする場合:

wget -O - http://whatever.com/page.php > /dev/null 2>&1

または、codegolfの場合:-)

wget -O-


12
-nv進行状況インジケーターが出力を上書きしないように追加することができます。
トアクリングバーグ

1
このアプローチには問題があります-応答ステータスが200でない場合、本文は出力されません。それを解決するための考えはありますか?
-Imaskar

71

よりシンプルなバージョン

wget -qO- http://example.com

に相当

wget -q -O - http://example.com

どこ

  • -q エラー情報を含むログの出力をオフにします
  • -O -と同等の-O /dev/stdout、という名前のファイルにウェブページをダンプすることを意味します/dev/stdout

2
最初のものはBusyBoxのwgetで動作します。これは非常に役立ちます。私はそれが後にスペースを持っ好きとは思わないO
zymhan

18
wget -qO /dev/null http://whatever.com/page.php
  • -q 静かにする
  • -O /dev/null ページの内容を無視する

6

また試すことができます:

wget -q -O - http://whatever.com/page.php > /dev/null 

-qそれは「静か」になります

または、ファイルを一時的なHTMLページに移動させます。whatever.com/tempFile.html


3
wget -O /dev/null http://example.com/

それはwget 1.12で私のMacで動作します。

あなたのコードが何をするのかについての説明をお願いします。
タマラウィスマン

-Oは「出力をこのファイルに書き込む」ことを意味します
-thomasrutter
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.