在 R 中解压 rar 档案

Unpack rar archives in R

我需要解压 zip 和 rar 档案,而且那必须是一个多平台解决方案。

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

unzip(filename, exdir=‘’)

但是我发现我不能那样解压rar文件。 在 OS X 上,如果我以这种方式配置解压器,我可以简单地打开存档来解压它:

system(paste("open", path))

我用谷歌搜索,可以安装 7zip 并从控制台解压,所以我尝试了 Windows

的安装程序包
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

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

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

你可以 运行

sudo apt-get install p7zip-rar

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

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

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