首頁 >後端開發 >Golang >如何取得 Go 可執行檔的絕對路徑?

如何取得 Go 可執行檔的絕對路徑?

Linda Hamilton
Linda Hamilton原創
2024-12-15 19:26:16992瀏覽

How Can I Get the Absolute Path of My Go Executable?

檢索Go 中的可執行路徑

在Go 中,常見的是為多個平台編譯程式並透過引用相對路徑來執行它們或二進位檔案的名稱(如果它駐留在PATH 環境變數中)。但是,在某些情況下,確定可執行檔的確切位置很有用。

為了實現這一點,Go 1.8 及更高版本提供了 os.Executable 函數,該函數會傳回正在運行的可執行檔的絕對路徑。

讓我們以名為「foo(.exe)」的程式為例。當使用不同的路徑運行時,例如./foo、foo或../../subdir/subdir/foo,我們可以使用以下程式碼來確定可執行檔的位置:

import (
    "os"
    "path"
    "log"
)

func main() {
    ex, err := os.Executable()
    if err != nil { log.Fatal(err) }
    dir := path.Dir(ex)
    log.Print(dir)
}

在此例如, os.Executable() 檢索可執行檔的絕對路徑,而path.Dir(ex) 則從該路徑中提取目錄。這允許我們存取程式所在的目錄。

結果將列印到控制台,為我們提供有關可執行檔案路徑的所需資訊。

以上是如何取得 Go 可執行檔的絕對路徑?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn