Golang:在二进制模式下执行gobench

时间:2014-06-03 17:07:15

标签: go

我正在编写一个脚本,我希望对gobench进行多次调用,我收到了我应该以二进制方式阅读的建议,就像那样

package main

import (
    "log"
    "os/exec"
)

func gobench(url string) {
    cmd := exec.Command("gobench", url)
    err := cmd.Run()
    if err != nil {
        log.Fatalf("Command finished with error: %v", err)
    }
}

var searchRoutes = []string{
    "http:www.myurl.com/request1",
    "http:www.myurl.com/request2",
    "http:www.myurl.com/request3",
    "http:www.myurl.com/request4",
}

func main() {
    for i := 0; i < len(searchRoutes); i++ {
        gobench(searchRoutes[i])
    }
}

但是一旦我这样做,我就会收到这个错误,有人知道为什么吗?

  

2014/06/03 12:02:44命令以错误结束:exec:&#34; gobench&#34;:   $ PATH

中找不到可执行文件

如果没有将gobench设置为PATH中的值,还有其他方法可以执行此操作吗?

如果我将我的gobench目录导出到我的路径,我就收到了

  

2014/06/03 12:22:59命令以错误结束:退出状态2退出   状态1

1 个答案:

答案 0 :(得分:1)

尝试将gobench所在的整个目录传递给exec.Command()

func gobench(url string) {
    cmd := exec.Command("/path/to/gobench", url)
    err := cmd.Run()
    if err != nil {
        log.Fatalf("Command finished with error: %v", err)
    }
}
相关问题