go - 在go中创建一个具有普通权限的目录

标签 go

如何使用 os.Mkdir 创建一个具有普通权限的目录(比如八进制表示法中的 0700)方法。我没能找到如何正确设置 perm 值。

最佳答案

您可以直接使用该八进制表示法:

os.Mkdir("dirname", 0700)

来自documentation for FileMode :

The nine least-significant bits are the standard Unix rwxrwxrwx permissions

模式位的定义使您可以像使用 chmod 一样使用普通的八进制表示法。但是,您必须在它前面加一个零,以告诉 Go 它是八进制文字。

此外,请记住第 4 个数字并不像在 chmod 中那样存在。使用 chmod,您可以执行 1700 来设置粘滞位。在 Go 中,您需要通过执行以下操作来设置操作系统库中定义的位:0700 | os.ModeSticky

关于go - 在go中创建一个具有普通权限的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22898236/

相关文章:

mysql - 如何将 `where in` 与整数片段一起使用

go - Golang中crypto.subtle.exportKey的替代方法是什么

nginx - Nginx中Golang App的基本配置

戈朗 : find first character in a String that doesn't repeat

json - 关于extends的Go JSON命名策略

windows - “GoDep”未被识别为内部或外部命令

go - 合并多个 go 模块的测试覆盖率

go - 为什么我必须使用 core.CreateIntVarFromTo 才能让这个数独解算器工作?

json - 在 Go 中,为什么我的 JSON 解码在这里不起作用?

go - 请解释 golang 类型是否按值传递