【问题标题】:Run a linux command from within golang (i'd like to run go fmt ./..)从 golang 中运行 linux 命令(我想运行 go fmt ./..)
【发布时间】:2018-09-27 00:39:15
【问题描述】:

在我问这个问题之前,我需要道歉,我知道在代码中以编程方式运行这种东西是愚蠢的,应该转移到 makefile 中 - 但管理层希望这项工作的所有内容都在二进制文件中,所以,酷.. .

我需要知道如何 cd 到一个目录,然后运行:

go fmt ./...

我找到了诸如 exec 之类的东西......但是当我需要运行命令时,问题似乎是专门寻找要使用的文件。

有人做过吗?有我的例子吗?

【问题讨论】:

标签: go


【解决方案1】:

当你运行“go fmt”时,你实际上是在运行一个文件,只是不知道它是哪个文件。尝试在命令行上运行“which go”。这将返回运行文件的路径。然后就可以使用找到的exec函数了。

要更改您的工作目录,您可以关注this answer。但是你也可以只传递一个相对路径。

【讨论】:

    猜你喜欢
    • 2017-07-03
    • 2018-02-16
    • 2020-07-06
    • 2012-02-01
    • 2011-01-10
    • 2016-01-03
    • 2011-03-18
    相关资源
    最近更新 更多