使用列表下载时如何在 wget 中使用选项?

使用列表下载时如何在 wget 中使用选项?

我正在使用 wget 下载文件,并准备了一个链接列表,现在我必须在列表中的每个链接上使用一些选项,例如我必须删除小于 30 KB 的文件,必须根据上一个链接重命名每个文件等。但我不想使用 bash 脚本,有没有办法做到这一点?

下载列表:

http://example.com/blah?blah --delete-after
http://example.com/download -O mynewfilename
...

答案1

如果文件中的命令每行都有一组参数,则可以使用xargs它们来运行该命令。从man xargs

--arg-file=file
-a file
      Read items from file instead of standard input.  If you use this
      option,  stdin  remains  unchanged  when   commands   are   run.
      Otherwise, stdin is redirected from /dev/null.


-L max-lines
      Use at most max-lines nonblank input  lines  per  command  line.
      Trailing blanks cause an input line to be logically continued on
      the next input line.  Implies -x.

示例文件(foo):

a b c
d e
f g h

所以:

$ xargs -a foo echo    
a b c d e f g h
$ xargs -L1 -a foo echo
a b c
d e
f g h

因此,你也许可以这样做:

xargs -L1 -a input.txt wget

相关内容