您如何将wget响应重定向到标准输出?


148

我有一个crontabwgetSA PHP页面每五分钟(只运行一些PHP代码),我想请求发送到标准输出的输出,在发送正常的wget输出/dev/null(或者隐藏)。我在wget手册中找不到。

我正在寻找类似的东西:

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

有人知道吗


5
标题错误,应为“如何将wget重定向为null?”。
鲍勃·斯坦

2
@ BobStein-VisiBone我认为它的标题正确。我想要将wget-ed放到a stdout,将法线stdout放到null(即忽略它通常打印的内容,而是打印响应正文)。
肖恩·阿德金森

6
哦! 我站得住了。我已经开始使用wget http://example.com/page.php -qO- (这是大写的哦。)仅标准输出响应主体。那是你想要的吗?
鲍勃·斯坦

Answers:


156

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以避免进度指示器覆盖输出。
Tor Klingberg,2015年

1
这种方法有一个问题-如果响应状态不是200,则不会打印正文。有什么想法可以解决吗?
Imaskar '18

70

一个更简单的版本

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页面。what.com/tempFile.html


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

它可以在wget 1.12的Mac上运行。

您能否提供一些有关代码功能的解释?
Tamara Wijsman

-O表示“将输出写入此文件”
thomasrutter
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.