如何使用xargs结合多参数批量下载指定文件名的文件?
使用xargs批量下载文件
直接用下面的命令就能实现批量下载:
xargs -n 2 wget -q -O < list
命令解释
-n 2:指定xargs每次从list文件里读取2个参数(对应每行的文件名和下载地址)- 这两个参数会自动匹配到
wget -q -O的参数位置,最终执行的效果和你手动输入的wget -q -O 文件名 下载地址完全一致。
如果要处理带特殊字符的文件名,更稳妥的写法是用shell脚本包裹:
xargs -I {} sh -c 'wget -q -O "$1" "$2"' _ {} < list
这里-I {}把每行内容作为整体占位,sh -c执行命令时,$1和$2分别对应每行的两个字段,_是用来填充shell脚本$0位置的占位符,避免参数错位。
内容的提问来源于stack exchange,提问作者Ax_
相关产品推荐
相关产品推荐

