【发布时间】:2018-07-16 08:25:21
【问题描述】:
我有一个包含多个下载链接的link.txt,所有链接都受相同的用户名和密码保护。
我的意图是同时下载多个文件,如果文件包含5个链接,则同时下载所有5个文件。
我试过了,但没有成功。
cat links.txt | xargs -n 1 -P 5 wget --user user007 --password pass147
and
cat links.txt | xargs -n 1 -P 5 wget --user=user007 --password=pass147
给我这个错误:
重用现有连接到 www.site.com 发送的 HTTP 请求, 等待响应... 404 Not Found
此消息出现在我尝试下载的所有链接中,除了文件中开始下载的最后一个链接。
我目前正在使用,但这次只下载一个文件
wget -user=admin --password=145788s -i links.txt
【问题讨论】:
-
(1)
cat links.txt | xargs最好写成< links.txt xargs。 (2) 如果密码包含对 shell 来说特殊的字符,您可能需要引用密码,例如*。 (3) 先尝试运行< links.txt xargs -n 1 -P 5 /bin/echo wget --user=user007 --password="pass147*",看看xargs到底在运行什么命令。 -
是的,我目前使用的是:
wget --user user007 --password "pass147*" -b -i links.txt,密码暂时不包含任何特殊字符。但是上面的命令一次只下载一个文件输入你给我的命令给我扔了一大堆wget --user=454545 --password=4546,但是不要运行或下载任何文件。 -
我建议的命令的重点是让你看看
xargs会执行什么。如果您对要执行的命令感到满意,则删除/bin/echo。并查看@VDR 的答案——它避免了对xargs的需要。
标签: linux ubuntu download wget xargs