我希望使用 Go 的 os.Create(filename) 方法建立一個檔案(相當於「mkdir filename」)。但是我沒有該資料夾的寫入權限。是否有“sudo mkdir filename”的 Go 方法?我在官方文件或其他地方找不到任何對此的引用。
golang 執行檔是從執行可執行檔的使用者上下文中執行的。如果你執行 go run main.go
,它會以「you」的身分執行。如果你執行 sudo go run main.go
它將以 root 身分執行。
因此,只需像具有 sudo 一樣編寫您的應用程式即可。並確保運行 sudo go run main.go
。
寫入檔案的範例程式:https://www.php.cn/link/69ddb50142a89123ba6f870ab07e6fbb
#package main import ( "fmt" "os" ) func main() { // Choose your own perms here file, err := os.OpenFile("myfile.txt", os.O_CREATE|os.O_WRONLY, 0644) if err != nil { panic(err) } _, err = file.WriteString("Hello World!") if err != nil { panic(err) } file.Close() data, err := os.ReadFile("myfile.txt") if err != nil { panic(err) } fmt.Println(string(data)) }
以上是使用 sudo 建立文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!