如果不包含完整文件路径,则无法从R内压缩目录

时间:2018-05-14 22:13:05

标签: r zip

每次运行代码时,我都有一个R脚本(pdf,csv文件)的输出目录,我想压缩(从utils包压缩)。

>path_out
I:\\full\\path\\to\\file\\
>files2zip <- dir(path_out, full.names = TRUE)
>zip(zipfile = paste(path_out,unitList[ii],"_",Sys.Date(),sep=""), files  = files2zip)

这会痛苦地生成一个zip文件,其中包含文件中包含的完整路径目录:

>unzip(zipfile = paste(path_out,unitList[ii],"_",Sys.Date(),".zip",sep=""), list = TRUE, junkpaths = FALSE)
                                            Date
/full/path/to/file/file1.pdf   7978       2018-04-16 13:44:00
/full/path/to/file/file2.pdf    6665      2018-04-16 09:14:00
/full/path/to/file/file3.pdf   6557       2018-04-15 11:22:00
/full/path/to/file/file4.csv    627       2018-03-27 11:10:00

在Bash zip中有一个-j标记,它用于完整路径并且只包含相对路径。在R中有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

您可以使用extras函数的zip()参数。

所以:

zip(zipfile = paste(path_out,unitList[ii],"_",Sys.Date(),sep=""), files  = files2zip, extras = '-j')