批量下载阿里云rpm包

目标:

下载https://mirrors.aliyun.com/centos-vault/8.4.2105/PowerTools/x86_64/os/Packages/下的所有rpm包

将当前网页下载下来:

wget https://mirrors.aliyun.com/centos-vault/8.4.2105/PowerTools/x86_64/os/Packages/

会得到一个名为index.html的文件

提取文件中的所有rpm包的名称:

cat index.html | grep href | awk -F"\"" '{print $4}' >> rpm.txt

注:提取出来的信息刚开头有十几行以及最后几行需要手动删除

另外,在html中符号 + 用 + 代替,所以需要将提取文件中的 + 替换回  + 号:

sed -i "s#&\#43;#+#g" rpm.txt

因为有2000+的rpm包,可能无法一次性的下载下来,所以做一个标记(在当前目录下,如果已经有该rpm则跳过,如果没有,则下载),多下载几遍

echo > downloaded.txt

ls | grep rpm >> downloaded.txt

cat rpm.txt | while read line;do grep $line downloaded.txt;if [ $? == 1 ];then wget https://mirrors.aliyun.com/centos-vault/8.4.2105/PowerTools/x86_64/os/Packages/${line};fi;done

原文地址:https://www.cnblogs.com/1016391912pm/p/15770640.html