2017-09-15 105 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!