我正在尝试打印传递给程序的命令行参数,但是引号(“)消失了。
例如:
package main
import (
"fmt"
"os"
"strings"
)
func main() {
fmt.Println(strings.join(os.Args[1:], " "))
}
然后使用go run test.go "status"
运行-应该会打印"status"
,但是正在打印status
。
答案 0 :(得分:3)
这严格取决于执行程序的外壳,而不是Go本身。例如,如果使用bash,请尝试在转义双引号的同时执行程序。像这样
go run test.go '"status"'
# OR
go run test.go \"status\"