Avatar ·

Como obter o caminho do diretório do arquivo executável atual em Go?

Olá, colegas! Sou novo em Go e me deparei com um problema que parece elementar, mas não consigo resolver. Preciso saber em tempo de execução o diretório onde está o arquivo executável atual (um .exe compilado ou binário). O problema é que estou escrevendo uma utilidade para trabalhar com arquivos de configuração. A estrutura do projeto é: ao lado do binário há uma pasta configs, dentro dela config.yaml. Quero que o programa leia esse arquivo sem usar caminhos fixos, porque o usuário pode copiar o binário para qualquer lugar. Aqui está meu código atual, que não funciona: ```go package main import ( "fmt" "os" "path/filepath" ) func main() { // Tentando diferentes opções exe, _ := os.Executable() fmt.Println("Executable path:", exe) dir := filepath.Dir(exe) fmt.Println("Directory:", dir) configPath := filepath.Join(dir, "configs", "config.yaml") fmt.Println("Config path:", configPath) } ``` P