如何使用Perl下载.gz文件

时间:2011-07-31 10:05:10

标签: perl

我想使用Perl下载扩展名为.gz的文件。我写了以下代码:

#!/usr/bin/perl

use strict;
use warnings;

use LWP::Simple;

my $url = 'http://www.ebi.ac.uk/thornton-srv/databases/pdbsum/2kri/igrow.out.gz';
my $file = 'prot-prot.txt';

getstore($url, $file);

但我已经意识到这段代码只能用于文本文件,而不能用于压缩文件。知道如何更改此代码以下载.gz文件吗?

感谢;

2 个答案:

答案 0 :(得分:1)

使用File::Fetch

答案 1 :(得分:1)

#!/usr/bin/perl

use strict;
use warnings;

use LWP::Simple;

my $url = 'http://www.ebi.ac.uk/thornton-srv/databases/pdbsum/2kri/igrow.out.gz';
my $file = 'igrow.out.gz';

getstore($url, $file);

如果您希望perl脚本解压缩文件,您可以使用system()运行gunzip或搜索CPAN以获取合适的perl模块。

如果您不喜欢两次输入'igrow.out.gz(可能会忘记更改其中一个文件名),请将$file = ...替换为

 (my $file = $url) =~ s!^.*/!!;