1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- package utils
- import (
- "log"
- "os"
- "os/exec"
- "path/filepath"
- "runtime"
- )
- func FileIsExist(path string) bool {
- _, err := os.Stat(path)
- if err == nil {
- return true
- }
- if os.IsNotExist(err) {
- return false
- }
- return false
- }
- // ExecCmd 执行脚本
- func ExecCmd(command string) ([]byte, error) {
- var cmd *exec.Cmd
- if runtime.GOOS == "windows" {
- cmd = exec.Command("powershell", "-command", command)
- } else {
- cmd = exec.Command("sh", "-c", command)
- }
- result, err := cmd.CombinedOutput()
- if err != nil {
- log.Println("install deps fail", err)
- return nil, err
- }
- log.Println("install deps success")
- return result, nil
- }
- func GetCurDir() string {
- ex, err := os.Executable()
- if err != nil {
- panic(err)
- }
- // 可执行文件的路径
- log.Println(ex)
- // 获取执行文件所在目录
- exPath := filepath.Dir(ex)
- log.Println("可执行文件路径 :" + exPath)
- // 使用EvalSymlinks获取真是路径
- realPath, err := filepath.EvalSymlinks(exPath)
- if err != nil {
- panic(err)
- }
- log.Println("符号链接真实路径:" + realPath)
- return realPath
- }
|