Go语言执行系统命令行命令的方法是怎样的

执行Go代码时可以附加参数,包括要执行的命令和给命令的参数

 代码如下:

package main
import (
  "os"
  "os/exec"
  "fmt"
  "flag"
  "strings"
)
func main() {
  command := flag.String("cmd", "pwd", "Set the command.")
  args := flag.String("args", "", "Set the args. (separated by spaces)")
  flag.Usage = func() {
    fmt.Fprintf(os.Stderr, "Usage: %s [-cmd <command>] [-args <the arguments (separated by spaces)>]\n", os.Args[0])
    flag.PrintDefaults()
  }
  flag.Parse()
  fmt.Println("Command: ", *command)
  fmt.Println("Arguments: ", *args)
  var argArray []string
  if *args != "" {
    argArray = strings.Split(*args, " ")
  } else {
    argArray = make([]string, 0)
  }
  cmd := exec.Command(*command, argArray...)
  buf, err := cmd.Output()
  if err != nil {
      fmt.Fprintf(os.Stderr, "The command failed to perform: %s (Command: %s, Arguments: %s)", err, *command, *args)
      return
  }
   fmt.Fprintf(os.Stdout, "Result: %s", buf)
}

原创文章,作者:GUIQJ,如若转载,请注明出处:https://www.beidanyezhu.com/a/28966.html

(0)
GUIQJ的头像GUIQJ
上一篇 2025-02-02
下一篇 2025-02-02

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

分享本页
返回顶部