在c语言中可以用system函数调用系统命令并得到输出,通过输出重定向也可以将程序执行的输出保存到文件以供使用,但用起来不是很方便。我这里介绍下用python和go语言的实现方式,可以将其它程序的输出直接保存成变量供程序使用。
下面的示例用的是ls命名,需要安装MinGW,并将“C:\MinGW\msys\1.0\bin”加入环境变量。
一、用python调用其它程序,并得到输出
示例代码:
代码如下:
import os
var = os.popen('ls -l').read()
print var
运行效果(以我机器为例):
二、用go语言调用其它程序,并得到输出
go代码:
代码如下:
package main
import (
"exec" // "os/exec" in go1
"fmt"
)
func main(){
cmd := exec.Command("ls", "-l")
buf, err := cmd.Output()
fmt.Printf("%s\n%s",buf,err)
}
运行效果如下: