假设我想在 go 在程序中运行‘ls’,并将结果存储在字符串中。在 中似乎有一些命令exec 和 os 包中的衍生过程,但它们需要 stdout 等的文件参数。有没有办法将输出作为字符串? 6 ?3 b0 R9 U& [4 m" W" _ 2 y+ ^3 Q1 Z- U2 X5 F- B+ F 解决方案: 3 p' Z) _& E8 H$ c, q7 n& E 现在有一个更简单的方法: - Y9 \2 c6 v2 n
package mainimport "fmt" "log" "os/exec")func main() out,err := exec.Command("date").Output() if err != nil log.Fatal(err) } fmt.Printf("The date is %s\n",out)}0 B# t @, i2 b. p" p
out标准输出在哪里?其格式为[]byte,但是,您可以使用以下命令轻松地将其更改为字符串:7 ?" l' {, M! [9 `" o. S' M