Avatar ·

Cómo obtener la ruta del directorio del archivo ejecutable actual en Go

¡Hola, colegas! Soy nuevo en Go y me encontré con un problema que parece elemental pero no se deja resolver. Necesito saber en tiempo de ejecución el directorio donde se encuentra el archivo ejecutable actual (un .exe compilado o binario). El problema es que estoy escribiendo una utilidad para trabajar con archivos de configuración. La estructura del proyecto es así: junto al binario hay una carpeta configs, dentro de la cual está config.yaml. Quiero que el programa lea este archivo sin usar rutas codificadas, porque el usuario puede copiar el binario a cualquier lugar. Aquí está mi código actual, que no funciona: ```go package main import ( "fmt" "os" "path/filepath" ) func main() { // Pruebo diferentes opciones 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