![在Linux下从包含文件列表的文本文件下载文件](https://linux22.com/image/502095/%E5%9C%A8Linux%E4%B8%8B%E4%BB%8E%E5%8C%85%E5%90%AB%E6%96%87%E4%BB%B6%E5%88%97%E8%A1%A8%E7%9A%84%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6%E4%B8%8B%E8%BD%BD%E6%96%87%E4%BB%B6.png)
我有一个文本文件,其中包含我的 word 文件的 url 列表
例如 :
http://domain.com/file1.zip
http://domain.com/file2.zip
http://domain.com/file3.zip
http://domain.com/file4.zip
...ETC
如何使用 Linux Shell 命令自动批量下载所有文件到文件夹
感谢帮助
答案1
从man wget
:
您有包含要下载的 URL 的文件吗?请使用 -i 开关:
wget -i <文件>
答案2
您也可以使用 xargs:
$ cat /path/to/list | xargs -n1 wget
或者,使用 seq 将 file1.zip 下载至 file10.zip:
$ seq 1 10 | xargs -n1 -i wget http://domain.com/file{}.zip
[编辑] 或者,正如另一位发帖者指出的那样:$ wget domain.com/file{1..10}.zip
这比 seq 方法更好,因为某些操作系统默认没有 seq (Mac OS X、Solaris)
答案3
for i in `cat /file/list`
do
wget $i
done
(这些是“cat /file/list”中的反勾号(与波浪号在同一个键上)
答案4
此命令将 file1.zip 下载至 file10.zip:
for i in $(seq 1 10); do wget -nv http://domain.com/file${i}.zip ; done