在R中解压缩rar档案

时间:2015-03-04 11:45:10

标签: r zip rstudio unpack rar

我需要解压缩zip和rar档案,这也必须是一个多平台解决方案。

在R中,您可以通过命令轻松解压缩

unzip(filename, exdir=‘’)

但我发现我无法以这种方式解压缩rar文件。 在OS X上,我可以简单地打开存档来解压缩它,如果我有这样的unarchiver配置:

system(paste("open", path))

我用谷歌搜索,可以安装7zip并从控制台解压缩,所以我尝试了适用于Windows的installr软件包

require(installr)
install.7zip()
system(paste("7z x", path))

但我收到警告,没有任何反应

running command '7z x 1.rar’ had status 127

和Unix的终端命令

system('sudo apt-get install p7zip-rar')
system(paste("7z x ", path))

但是它返回了sudo错误

sudo: no tty present and no askpass program specified

3 个答案:

答案 0 :(得分:1)

为了支持您自己的应用程序在任何平台上解压缩RAR存档,我建议将 UnRAR源代码集成到您的应用程序中。源代码是用C ++编写的。因此,您需要使用C ++编译器为所有平台编译此源代码,并将生成的应用程序添加到R应用程序包中。

嗯,还有免费的 UnRAR 适用于Windows(x86和x64),Linux,Mac OS X以及WinRAR and RAR archiver addons页面上各种处理器的其他操作系统。因此,您可以为您希望支持的每个平台创建一个包含R应用程序和适用于 UnRAR 应用程序的软件包。

答案 1 :(得分:1)

你可以运行

sudo apt-get install p7zip-rar

在终端中,您有错误,因为在rstudio中,您无法要求输入密码。

答案 2 :(得分:0)

在Windows中,您可以使用untar来解压缩RAR文件。

但是在Linux中,我失败了。仍在尝试修复它。