首頁 > 後端開發 > Golang > 使用 sudo 建立文件

使用 sudo 建立文件

王林
發布: 2024-02-06 09:21:10
轉載
1313 人瀏覽過

使用 sudo 创建文件

問題內容

我希望使用 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中文網其他相關文章!

來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板