【发布时间】:2021-06-09 05:42:54
【问题描述】:
我一直在尝试将一些文本写入 OCaml 中的文件并偶然发现以下问题。
使用open_out_gen 打开频道允许为新创建的文件设置权限以及打开文件的模式。
例如:
let write_to_file perm =
let oc = open_out_gen [Open_creat; Open_append] perm ((Int.to_string perm )^".txt") in
Printf.fprintf oc "%s\n" "yolo";
close_out oc;;
为名为
检查新创建文件的权限时出现问题。直觉上我会假设ls -l 显示的权限标志将等于perm 的值。我的意思是,如果我用write_to_file 777 调用上述函数,新文件应该有所有者、组和其他人的rwx 标志。
但是当我检查它的权限时,它会显示“-r----x--t”,所以该文件可以被所有者读取,由所有者组中的每个人执行,并且只能由该文件的所有者删除文件。
我的问题是为什么会出现这样的结果,我怎样才能真正为每个人授予像 rwx 这样的权限?
【问题讨论】:
标签: linux ocaml file-permissions