Kur*_*eek 6 file-permissions go
我正在尝试使用创建一个目录os.Mkdir(),然后在其中创建文件,类似于此脚本:
package main
import (
"log"
"os"
"path"
)
func main() {
dir := "test_dir"
os.Mkdir(dir, os.ModeDir)
fileName := path.Join(dir, "file.txt")
_, err := os.Create(fileName)
if err != nil {
log.Fatalf("create file: %v", err)
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我运行它,我会得到
> go run fileperms.go
2019/10/15 14:44:02 create file: open test_dir/file.txt: permission denied
exit status 1
Run Code Online (Sandbox Code Playgroud)
从https://golang.org/pkg/os/#FileMode我不清楚如何指定FileMode以便允许相同的脚本在新创建的目录中创建文件。我怎样才能做到这一点?
Kur*_*eek 11
我发现如果我将权限设置为0777:
package main
import (
"io/ioutil"
"os"
"path"
)
func main() {
dir := "test_dir"
os.Mkdir(dir, 0777)
fileName := path.Join(dir, "file.txt")
ioutil.WriteFile(fileName, []byte("foobar"), 0666)
}
Run Code Online (Sandbox Code Playgroud)
现在文件是用预期的内容创建的:
> cat test_dir/file.txt
foobar?
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6577 次 |
| 最近记录: |