如何通过bash将下载的文件传输到标准输出?


Answers:


47
wget -O - -o /dev/null  http://google.com

11
仅当您真的不关心错误时,才需要-o / dev / null,因为没有错误,错误将被写入stderr(而文件被写入stdout)。
Greg Hewgill 09年

对。或者您可以检查错误代码...只要将输出通过管道传输到文件而不是其他命令。
pQd

AFAIK,无需-o / dev / null,因为无论如何这都会传递给stderr。
米兰巴布斯科夫2009年

10
您可以wget -qO- $URL用来简化事情。
奥利

wget -qO- $URL如果您在Windows上使用Wget,则可以正常工作-Chris
S


6

您可以使用其他方法代替wget和curl:

您可以使用lynx:

# lynx -source http://www.google.com

w3m:

# w3m -dump_source http://www.google.com

libwww-perl附带了一个名为GET的便捷程序(还有HEAD和POST,它们可以执行您认为的操作)

# GET http://www.google.com

1
题外话,但是我在某些脚本中使用了lynx来为我自动解析html,只要我需要页面的内容并且不关心标记。这非常好
Matt Simmons

实际上,lynx和w3m都有-dump选项。我更喜欢w3m的表和框架支持。
David Pashley 2009年

0

只是添加另一个选项:为此,我经常使用libwww-perl的lwp-request。默认情况下,它输出到STDOUT,并且比curl更有可能安装在我使用的系统上(您的情况可能会有所不同)。


FWIW,Mac OS可以卷曲(不是wget),我相信其他BSD也可以。就像我使用过的许多嵌入式* nix系统一样。不知道Perl是否比curl更常见。
Wyatt8740 '16

0

这是我的方法:

URL='http://wordpress.org/extend/plugins/akismet/'
curl -s "$URL" | egrep -o "http://downloads.wordpress.org/plugin/[^']+" | xargs wget -qO-

0

我建议使用Aria2。它是强大的下载器。

aria2c http://google.com.tw
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.