通过网络提取gzip文件

时间:2013-04-17 09:50:10

标签: windows r unzip gunzip

我在Windows 7上使用R.2.15.2,我无法解压缩存储在网络上的.gz文件。 我也在使用gnuwin32(如果它有帮助)

看到文件,所以位置确定

system("ls")
file1.bla.gz
file2.bla.gz
file3.bla.gz
...

R) unzip("./file1.bla.gz")
Message d'avis :
In unzip("./file1.bla.gz") :
erreur 1 lors de l'extraction d'un fichier zip

R) untar("./file1.bla.gz")
/usr/bin/tar: This does not look like a tar archive
/usr/bin/tar: Skipping to next header

使用函数unzip也不起作用,看起来它只处理.zip个文件。不确定问题是在网络中还是我错误地调用它......

如何提取此文件?

编辑:以下工作

system(" \"C:\\Program Files\\7-Zip\\7z.exe\" e -y file1.bla.gz")

来自gunzip的{​​{1}}甚至更好,感谢@Paul Hiemstra

1 个答案:

答案 0 :(得分:2)

您可以使用gzfile访问gzip压缩文件的内容,例如:

read.table(gzfile("/tmp/foo.csv.gz")) 

其中foo.csv.gz是gzip压缩的csv文件。我在this post得到了这个表格@ DirkEddelbuettel的答案。

如果您的目标是提取文件,则可以使用gunzip包中的R.utils功能。请参阅this R-help帖子。