将数据写入不同的目录,以便发光应用

时间:2017-08-23 01:33:45

标签: r linux shiny shiny-server

我在linux上有一个运行闪亮服务器的闪亮应用程序。按照我的设置,应用程序位于/srv/shiny-server/app-dir/

我想使用我放在一起的.R文件将文件写入该目录以供我的shiny-app阅读。在该文件中,我写了这样的数据:write.csv(df, "file.csv")。如果我使用我的shiny-app目录运行此文件 Rscript /srv/shiny-server/app-dir/write_script.R,它将数据写入/home/ec2-user

如果我将write命令更改为write.csv(df, '/srv/shiny-server/app-dir/data.csv')并以相同的方式运行它不起作用(权限被拒绝)。

我也无法从我的闪亮应用程序中读取/home/ec2-user/中的文件。

所以我的问题是:我如何根据上面列出的文件夹结构,从我的shiny-app访问的R脚本(不是发光应用中的server.R文件)中编写文件?

1 个答案:

答案 0 :(得分:0)

闪亮的应用由用户shiny执行,用户无法访问用户home的{​​{1}}目录。您可以在将文件复制到ec2-user

后立即更改文件的读取权限
  • 使用linux命令:/srv/shiny-server/app-dir
  • 使用R命令:chmod a+r /srv/shiny-server/app-dir/file.csv