golang 获取当前可执行程序的当前路径

Posted 晴天224

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang 获取当前可执行程序的当前路径相关的知识,希望对你有一定的参考价值。

import (
	"errors"
	//	"fmt"
	"os"
	"os/exec"
	"path/filepath"
	"runtime"
	"strings"
)

func GetCurrentPath() (string, error) {
	file, err := exec.LookPath(os.Args[0])
	if err != nil {
		return "", err
	}
	path, err := filepath.Abs(file)
	if err != nil {
		return "", err
	}
	//fmt.Println("path111:", path)
	if runtime.GOOS == "windows" {
		path = strings.Replace(path, "\\", "/", -1)
	}
	//fmt.Println("path222:", path)
	i := strings.LastIndex(path, "/")
	if i < 0 {
		return "", errors.New(`Can‘t find "/" or "\".`)
	}
	//fmt.Println("path333:", path)
	return string(path[0 : i+1]), nil
}

  

以上是关于golang 获取当前可执行程序的当前路径的主要内容,如果未能解决你的问题,请参考以下文章

C# WinForm获取 当前执行程序路径的几种方法

如何获取 Qt 应用程序的当前工作目录路径?

c#怎么获取程序当前运行路径

如何获取执行程序的当前路径

获取node 安装当前执行路径

如何获取当前C#源代码文件的路径?