mac 脚本命令打开新的终端 执行命令

需求 自己写脚本 可能要开一个Terminal 来跑一个服务

我的方案是通过applescript 来实现的
applescript 可以自行百度
以启动一个node为例
go启动一个服务

func execCmd(command string){
    cmd := exec.Command("/bin/bash", "-c", command)
    stdout, err := cmd.StdoutPipe()
    if err != nil {
        fmt.Println(err)
    }
    cmd.Start()
    reader := bufio.NewReader(stdout)
    for {
        line, err2 := reader.ReadString('\n')
        if err2 != nil || io.EOF == err2 {
            break
        }
        fmt.Println(line)
    }
    cmd.Wait()
}

func runServer(){
  fmt.Println("启动node服务")
   execCmd(`cd react && yarn`)
   //osascript是一个命令行可执行
   execCmd(`osascript appscrpt.scpt ` +dir+"/react")
}

appscrpt.scpt


on run args
 tell application "Terminal"
 //语法&是字符串拼接的意思
 set currentTab to do script (("cd "&args&" && yarn start"))
  end tell
end

原文连接:https://blog.csdn.net/qq_22329521/article/details/95395446

你可能感兴趣的:(mac 脚本命令打开新的终端 执行命令)