Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我是 Go 新手,在读取默认文件权限/系统掩码时遇到了一些问题。当然我可以指定固定的权限:
f, err := os.OpenFile(fpath, os.O_CREATE|os.O_WRONLY, 0600)
但我希望程序表现良好并使用用户的帐户集打开一个文件umask。我怎样才能做到这一点?
umask
它已经像你想要的那样工作了。
只需使用“0666”即可应用 umask。
f, err := os.OpenFile(fpath, os.O_CREATE|os.O_WRONLY, 0666)
对我来说,umask 0022我得到:
umask 0022
$ go run x.go ; ls -l filename -rw-r--r-- 1 ask wheel 0 May 24 00:18 filename
如果您总是希望文件不被“其他”读取,请使用 0660(例如),无论 umask 是什么。