package common import ( "os" "path/filepath" "runtime" ) //Get the currently selected configuration file directory //For non-Windows systems, select the /etc/nps as config directory if exist, or select ./ //windows system, select the C:\Program Files\nps as config directory if exist, or select ./ func GetRunPath() string { var path string if path = GetInstallPath(); !FileExists(path) { return "./" } return path } //Different systems get different installation paths func GetInstallPath() string { var path string if IsWindows() { path = `C:\Program Files\nps` } else { path = "/etc/nps" } return path } //Get the absolute path to the running directory func GetAppPath() string { if path, err := filepath.Abs(filepath.Dir(os.Args[0])); err == nil { return path } return os.Args[0] } //Determine whether the current system is a Windows system? func IsWindows() bool { if runtime.GOOS == "windows" { return true } return false } //interface log file path func GetLogPath() string { var path string if IsWindows() { path = "./" } else { path = "/tmp" } return path } //interface pid file path func GetPidPath() string { var path string if IsWindows() { path = "./" } else { path = "/tmp" } return path }