go和python调用其它程序并得到程序输出

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

运行效果如下:

(0)

相关推荐

  • Go语言RPC Authorization进行简单ip安全验证的方法

    本文实例讲述了Go语言RPC Authorization进行简单ip安全验证的方法.分享给大家供大家参考.具体分析如下: 前言:写网络服务,总要考虑安全机制,对ip和网段进行判断是最简单的一个验证机制.之后想做一个类似注册式的安全验证机制,既可以减少配置文件的麻烦,又可以很好的进行安全管理. 直接上代码: 复制代码 代码如下: package main import(     "net"     "fmt"     "time"     &quo

  • golang守护进程用法示例

    本文实例讲述了golang守护进程用法.分享给大家供大家参考,具体如下: 用node写了一个socket后台服务,可是有时候会挂,node一个异常就game over了,所以写了一个守候. 复制代码 代码如下: package main import (         "log"         "os"         "os/exec"         "time" ) func main() {         lf,

  • golang模板template自定义函数用法示例

    本文实例讲述了golang模板template自定义函数用法.分享给大家供大家参考,具体如下: golang的模板十分强大,其中的unix管道风格函数调用很是喜欢. 模板中有很多内置可以参看pkg文档, 另外还可以实现自定义函数. 例子如下: 复制代码 代码如下: package main import (     "text/template"     "time"     "os" ) type User struct {     Usern

  • Go语言调用其它程序并获得程序输出的方法

    本文实例讲述了Go语言调用其它程序并获得程序输出的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package main import (     "exec" // "os/exec" in go1     "fmt" ) func main(){     cmd := exec.Command("ls", "-l")     buf, err := cmd.Output()   

  • golang基于websocket实现的简易聊天室程序

    本文实例讲述了golang基于websocket实现的简易聊天室.分享给大家供大家参考,具体如下: 先说点无关的,最近忙于工作没有更新博客,今天休息顺便把golang websocket研究了一下,挺好玩的,写了一个聊天室,分享给大家. websocket包 : code.google.com/p/go.net/websocket 文档 : http://go.pkgdoc.org/code.google.com/p/go.net/websocket 首先安装websocket包 复制代码 代码

  • golang实现通过smtp发送电子邮件的方法

    本文实例讲述了golang实现通过smtp发送电子邮件的方法.分享给大家供大家参考,具体如下: 今天写了一个公司的邮件发送后台服务,php只需要把邮件存入数据库,然后golang写的mailservice就会吧邮件发送出去.这个公司的代码就不发出来的,以为带有公司的业务逻辑,我把代码整理了一下发布出来供大家参考.呵呵 复制代码 代码如下: package main import (     "fmt"     "net/mail"     "net/smt

  • golang两种调用rpc的方法

    本文实例讲述了golang两种调用rpc的方法.分享给大家供大家参考,具体如下: golang的rpc有两种方法进行调用,一种是rpc例子中给的: 复制代码 代码如下: package main import (         "net/rpc"         "net/http"         "log"         "net"         "time" ) type Args struct

  • Go语言中函数的参数传递与调用的基本方法

    按值传递函数参数,是拷贝参数的实际值到函数的形式参数的方法调用.在这种情况下,参数在函数内变化对参数不会有影响. 默认情况下,Go编程语言使用调用通过值的方法来传递参数.在一般情况下,这意味着,在函数内码不能改变用来调用所述函数的参数.考虑函数swap()的定义如下. 复制代码 代码如下: /* function definition to swap the values */ func swap(int x, int y) int {    var temp int temp = x /* s

  • golang使用sort接口实现排序示例

    本文实例讲述了golang使用sort接口实现排序的方法.分享给大家供大家参考,具体如下: 今天看见群里再讨论排序的sort.Interface的实现,有童鞋一直搞不定,我就上手了一下,哦耶搞定了,代码放在这里. 其实很简单sort.Interface借口有三个方法,给自己的struct实现这三个方法,然后用将自己的结构体传给sort.Sort方法就排序完成. 当然sort包也有几个常用的方法sort.Float64Slice sort.IntSlise sort.StringSlise,呵呵

  • golang简单读写文件示例

    本文实例讲述了golang简单读写文件的方法.分享给大家供大家参考,具体如下: 这里演示golang读写文件的方法: 复制代码 代码如下: package main import (     "fmt"     "os" ) func main() {     f, err := os.OpenFile("file2.txt", os.O_RDWR | os.O_CREATE | os.O_APPEND, 0x644)     if err !=

随机推荐