本文实例讲述了Go语言执行系统命令行命令的方法。分享给大家供大家参考。具体如下:
执行Go代码时可以附加参数,包括要执行的命令和给命令的参数
复制代码 代码如下:package main
import (
nbsp; "os"
nbsp; "os/exec"
nbsp; "fmt"
nbsp; "flag"
nbsp; "strings"
)
func main() {
nbsp; command := flag.String("cmd", "pwd", "Set the command.")
nbsp; args := flag.String("args", "", "Set the args. (separated by spaces)")
nbsp; flag.Usage = func() {
nbsp;nbsp;nbsp; fmt.Fprintf(os.Stderr, "Usage: %s [-cmd lt;commandgt;] [-args lt;the arguments (separated by spaces)gt;]n", os.Args[0])
nbsp;nbsp;nbsp; flag.PrintDefaults()
nbsp; }
nbsp; flag.Parse()
nbsp; fmt.Println("Command: ", *command)
nbsp; fmt.Println("Arguments: ", *args)
nbsp; var argArray []string
nbsp; if *args != "" {
nbsp;nbsp;nbsp; argArray = strings.Split(*args, " ")
nbsp; } else {
nbsp;nbsp;nbsp; argArray = make([]string, 0)
nbsp; }
nbsp; cmd := exec.Command(*command, argArray...)
nbsp; buf, err := cmd.Output()
nbsp; if err != nil {
nbsp;nbsp;nbsp;nbsp;nbsp; fmt.Fprintf(os.Stderr, "The command failed to perform: %s (Command: %s, Arguments: %s)", err, *command, *args)
nbsp;nbsp;nbsp;nbsp;nbsp; return
nbsp; }
nbsp;nbsp; fmt.Fprintf(os.Stdout, "Result: %s", buf)
}
希望本文所述对大家的Go语言程序设计有所帮助。 (编辑:淮北站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|