golang执行exec命令


创建对象:
cmd, err := exec.Command("echo", "show me")
 
执行命令:
cmd.Run()  //Run 阻塞进程,直到命令执行结束
cmd.Start() //Start 非阻塞执行
cmd.Wait() //Wait 阻塞进程,等待命令执行结束, 与 Star 配合使用
 
设置输出:
var outInfo bytes.Buffer
cmd := exec.Command("tr", "a-z", "A-Z")
cmd.Stdin = strings.NewReader("select * from user")
cmd.Stdout = &outInfo
 
Cmd结构体说明:
  func Command(name string, arg ...string) *Cmd
Cmd结构体定义:
type Cmd struct {
  // 命令
  Path string
 
  // 命令参数
  Args []string
 
  // 进程执行环境
  Env []string
 
  // 命令执行目录, 默认当前目录
  Dir string
  
  // 命令输入
  Stdin io.Reader
 
  // 命令输出
  Stdout io.Writer
 
  // 命令报错
  Stderr io.Writer
 
 
  ExtraFiles []*os.File
  SysProcAttr *syscall.SysProcAttr
  Process *os.Process
  ProcessState *os.ProcessState
}
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM