私のメソッドは、execに文字列としてコマンドを受け取るようにしたい。入力文字列にスペースがある場合は、どのようにそれをcmdに分割するのですか?os.execの引数は?スペースで文字列からos.execコマンド構造体を作成する方法
a := string("ifconfig")
cmd := exec.Command(a)
output, err := cmd.CombinedOutput()
fmt.Println(output) // prints ifconfig output
これは失敗します:
はドキュメントは
cmd := exec.Command("tr", "a-z", "A-Z")
これは正常に動作しますように私のExec.Cmd構造体を作成するために言う
a := string("ifconfig -a")
cmd := exec.Command(a)
output, err := cmd.CombinedOutput()
fmt.Println(output) // 'ifconfig -a' not found
は私がstrings.Splitを試してみました(A )、エラーメッセージを受け取る:exec.Commandへの引数に型文字列として(型[]文字列)を使用できない
空白の
あなたstrings.Splitを(使用)間違ってはgolang.org/pkg/strings/#分割する場合は、区切り記号を入力する必要があります。 so .. strings.Split(a、 "")は1つのスペースで分割され、2つ目は既に分割されているため分割できないため、変数 "a"は既にスライスであり文字列ではありません。最後に、文字列を分割する代わりにスライスを定義することもできます。 a:= [] string {"inconfig"、 "a"}。 – reticentroot