檢索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中文網其他相關文章!