2017-09-15 107 views
4

我需要在我正在编写的R包中包含几个bash脚本。我很乐意将它们与包一起分发,因此当用户通过devtools::install_github(...)安装包时,他/她也会获得脚本。如何在包中包含bash脚本?

我知道这是可能的,但我不知道如何。包括scripts子目录中的文件似乎不够。我需要一种方法来告诉R(或RStudio)包含它们。

我使用RStudio进行开发,所以我希望能够与RStudio提供的“构建包”功能集成的解决方案。

+1

_“我知道这是可能的”_,对此有何参考? – Axeman

+0

如果您想在某个时候提交给CRAN,可能会很好。 – Axeman

+0

@Axeman我在各种R软件包的本地库中搜索,其中一些包含外部文件。例如'acepack'在根文件夹中包含一个Word文档。 –

回答

2

只需将您想要的文件添加到包中的inst/xxx文件夹即可。

当您将软件包编译/发布为库时,该文件夹将被安装为xxx

您可以通过system.file()访问文件,例如,

system.file('scripts/peak_mem.sh', package='clustertools') 

见关于R packages by Hadley Wickham

更多细节谢谢@Axeman!