r - 为 R 中创建的文件设置文件权限

标签 r file-permissions

我在 Linux 上,想分享 R与同事一起输出,同时还允许他们覆盖我的文件。但是,当我编写文件时,该组的权限设置为只读,例如:

> write.csv(data.frame(a = 1:3), file = "/tmp/test.csv")
> file.mode("/tmp/test.csv")
[1] "644"

创建一个只能由我自己写的文件。有没有我可以设置的选项,以便我写的文件具有权限 660为所有写入文件的方式( write.csvdata.table 等)自动设置?

最佳答案

解决方法是设置umask使用 Sys.umask如下。

# Before setting umask as in the question:
> write.csv(data.frame(a = 1:3), file = "/tmp/test.csv")
> file.mode("/tmp/test.csv")
[1] "644"
# Setting the umask results in succes:
Sys.umask("006")
> write.csv(data.frame(a = 1:3), file = "/tmp/test2.csv")
> file.mode("/tmp/test2.csv")
[1] "660"

关于r - 为 R 中创建的文件设置文件权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44633935/

相关文章:

linux - docker容器奇怪的文件权限(权限位和用户位的问号)

r - 在 R 中用 mutate_at 覆盖很多列?

r - 无论列的顺序如何聚合

r - 在 geom_point 中为 ggplot2 中的负值和正值设置不同的颜色

r - 使用freed读取大cdv时,为什么不能引用列号读取列

linux 访问系统调用未按预期工作

java - 无法在 macOS 上打开文件 - FileNotFoundException,不允许操作

r - 如何在 corrplot 中更改配色方案

php -/var/www 中的符号链接(symbolic link)权限被拒绝

git - 如何在不修改 .git/index 的情况下运行 git status - 例如在 PROMPT_COMMAND 中