博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
下载R语言软件包脚本
阅读量:5871 次
发布时间:2019-06-19

本文共 839 字,大约阅读时间需要 2 分钟。

#!/usr/bin/perl

use HTTP::Tiny;

use Data::Dumper;

my $contrib_url="http://mirrors.ustc.edu.cn/CRAN/web/packages/available_packages_by_name.html";

my $browser=HTTP::Tiny->new();

my $response=$browser->get("$contrib_url");

my $content=$response->{"content"};

my @lines=split/\n/,$content;

my $i=0;

foreach my $line(@lines){

        if($line=~m/href="([\w\d\.\/]+)"/){

                my $pkg_url=$1;

                $pkg_url=~s|\.\.\/\.\.|http://mirrors.ustc.edu.cn/CRAN|;

                $response=$browser->get("$pkg_url");

                $content=$response->{content};

                $content=~m/href="(.*tar.gz)"/;

                $down_link=$1;

                $down_link=~s|\.\.\/\.\.\/\.\.|http://mirrors.ustc.edu.cn/CRAN|;

                if($down_link=~m/\/([\w\d\._\-]+\.tar\.gz)$/){

                        $i++;

                        my $pkg_name=$1;

                        print "$i Downloading!!!\n";

                        system("wget -c $down_link -O $pkg_name");

                }

        }

}

~               

本文转自 tiger506 51CTO博客,原文链接:http://blog.51cto.com/tiger506/1608601,如需转载请自行联系原作者
你可能感兴趣的文章
bzoj千题计划274:bzoj3779: 重组病毒
查看>>
SPOJ 839 OPTM - Optimal Marks (最小割)(权值扩大,灵活应用除和取模)
查看>>
【cl】eclipse基本设置(字体、配置JDK)
查看>>
Python学习笔记(1)-Python介绍、解释器、第一个python程序、注释
查看>>
在Linux里设置环境变量的方法(export PATH)
查看>>
《zw版·Halcon-delphi系列原创教程》 2d照片-3d逆向建模脚本
查看>>
[NOIP2003] 普及组
查看>>
[NOIP2005] 提高组 洛谷P1053 篝火晚会
查看>>
WPF绑定错误
查看>>
LeetCode 167. Two Sum II - Input array is sorted
查看>>
反射:获取枚举类型的Name,Value,Description
查看>>
Python中read()、readline()和readlines()三者间的区别和用法
查看>>
构造函数 、析构函数 、拷贝构造函数 ~~~~~~~~~~构造函数
查看>>
openssl内核升级
查看>>
获取公网IP地址
查看>>
C#Listview添加数据,选中最后一行,滚屏
查看>>
Linux基础之-正则表达式(grep,sed,awk)
查看>>
向有序的环形单链表中插入新节点
查看>>
处女面总结
查看>>
GCC编译器编译链接
查看>>