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

Sea*_*son 237 linux wget stdout

我每五分钟就有一个crontab那个wgetPHP 页面(只是为了运行一些 PHP 代码),我想将请求的输出发送到标准输出,同时将正常wget输出发送到/dev/null(或以其他方式隐藏它)。我在wget手册中找不到它。

我正在寻找类似的东西:

wget -o stdout http://whatever.com/page.php > /dev/null
Run Code Online (Sandbox Code Playgroud)

有人知道吗?

Tom*_*mas 242

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

或者,如果您还想重定向标准错误输出:

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

或者,对于 codegolf :-)

wget -O-

  • 您可能需要添加 `-nv` 以避免进度指示器覆盖输出。 (23认同)
  • 请参阅 Martin Wang 的回答 - 您需要添加 -q 才能实际看到输出。 (3认同)
  • 我想从网站输出 IP 地址,所以我只需输入 `wget -q -O - https://api.ipify.org` 并将其输出到 shell 。 (3认同)

Mar*_*ang 174

更简单的版本

wget -qO- http://example.com
Run Code Online (Sandbox Code Playgroud)

相当于

wget -q -O - http://example.com
Run Code Online (Sandbox Code Playgroud)

在哪里

  • -q 关闭日志的输出,包括错误信息
  • -O -,相当于-O /dev/stdout,表示将网页转储到名为/dev/stdout.

  • 第一个与 BusyBox 的 wget 配合使用,非常有用。我不认为它喜欢在“O”后面有一个空格 (4认同)

小智 20

wget -qO /dev/null http://whatever.com/page.php
Run Code Online (Sandbox Code Playgroud)
  • -q 让它安静
  • -O /dev/null 忽略页面内容


小智 10

你也可以试试:

wget -q -O - http://whatever.com/page.php > /dev/null 
Run Code Online (Sandbox Code Playgroud)

-q会使其“安静”

或者让文件转到一些您不介意的临时 html 页面。what.com/tempFile.html