如何在go中使用带有多个参数的exec?我在go中找到了一个exec的例子,但我不明白如何使用多个args,这就是我尝试过的:
cmdName := os.Args[1]
cmdArgs := []string{os.Args[1:]}
cmd := exec.Command(cmdName, cmdArgs...)
答案 0 :(得分:1)
以下是如何将exec
与多个参数一起使用的示例:
package main
import (
"fmt"
"log"
"os"
"os/exec"
)
func main() {
args := os.Args[1:]
fmt.Printf("%s\n", args)
res, err := exec.Command("ls", args...).Output()
if err != nil {
log.Fatal(err)
}
fmt.Printf("%q\n", string(res))
}
没有args:
echo -e $(go run args.go )
[] "args.go
file1
file2
file3
"
使用-s
和-r
args:
echo -e $(go run args.go -s -r )
[-s -r] "total 4
0 file3
0 file2
0 file1
4 args.go
"