Abrufen des ausführbaren Pfads in Go
In Go ist es üblich, Programme für mehrere Plattformen zu kompilieren und sie durch Verweis auf einen relativen Pfad auszuführen oder der Name der Binärdatei, wenn sie sich in der Umgebungsvariablen PATH befindet. Es gibt jedoch Fälle, in denen es nützlich ist, den genauen Speicherort der ausführbaren Datei zu ermitteln.
Um dies zu erreichen, bieten Go 1.8 und spätere Versionen die Funktion os.Executable, die den absoluten Pfad zur laufenden ausführbaren Datei zurückgibt.
Betrachten wir als Beispiel das Programm „foo(.exe)“. Bei der Ausführung unter Verwendung unterschiedlicher Pfade, z. B. ./foo, foo oder ../../subdir/subdir/foo, können wir den folgenden Code verwenden, um den Speicherort der ausführbaren Datei zu ermitteln:
import ( "os" "path" "log" ) func main() { ex, err := os.Executable() if err != nil { log.Fatal(err) } dir := path.Dir(ex) log.Print(dir) }
In diesem Beispielsweise ruft os.Executable() den absoluten Pfad zur ausführbaren Datei ab und path.Dir(ex) extrahiert das Verzeichnis aus diesem Pfad. Dadurch können wir auf das Verzeichnis zugreifen, in dem sich das Programm befindet.
Das Ergebnis wird auf der Konsole ausgegeben und liefert uns die erforderlichen Informationen über den Pfad der ausführbaren Datei.
Das obige ist der detaillierte Inhalt vonWie kann ich den absoluten Pfad meiner ausführbaren Go-Datei ermitteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!