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

你可能感兴趣的:(脚本)