在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)
}

运行效果如下: