【Go】exec.Commandで外部コマンドを実行する

たまたま気になったので調べてみました。

ざっくりいうと
exec.Command("hoge")で実行コマンドを指定します。

  • .Run() : 返却値を無視
  • .Output() : 返却値を取得
  • .Start() : 完了を待たない
  • .Wait() : 完了を待つ

ソースコードは後述の参考Qiitaを参考にしています。

Go で外部コマンド実行
exec - The Go Programming Language
知らなかったんですけど、動的引数を渡す時って「args...」というように「...」も必要だったんですね。

これが無いとこんなエラーになります

# command-line-arguments
./do_command.go:36:36: cannot use args (type []string) as type string in argument to exec.Command

<参考ページ>
qiita.com
stackoverflow.com