第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有什么方法可以在 exec.Command 中執(zhí)行多個命令嗎?

有什么方法可以在 exec.Command 中執(zhí)行多個命令嗎?

Go
12345678_0001 2023-06-26 18:00:07
我正在嘗試使用 Go 執(zhí)行一組命令exec.Command()。我嘗試使用 Docker Exec 分離 Gluster 對等點。fmt.Println("About to execute gluster peer detach")SystemdockerCommand := exec.Command("sh", "-c", "docker exec ", "9aa1124", " gluster peer detach ", "192.168.1.1", " force")var out bytes.Buffervar stderr bytes.BufferSystemdockerCommand.Stdout = &outSystemdockerCommand.Stderr = &stderrerr := SystemdockerCommand.Run()if err != nil {    fmt.Println(fmt.Sprint(err) + ": " + stderr.String())}fmt.Println("System Docker exec : " + out.String())我期待的結果是“沒有同行可以分離”。但退出狀態(tài)為 1:“docker exec”需要至少 2 個參數(shù)。
查看完整描述

3 回答

?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

由于您已經使用了sh -c,因此下一個參數(shù)應該是完整的命令或命令:


SystemdockerCommand := exec.Command("sh", "-c", "docker exec 9aa1124 gluster peer detach 192.168.1.1 force")

更一般地說,如下所示:


cmd := exec.Command("/bin/sh", "-c", "command1 param1; command2 param2; command3; ...")

err := cmd.Run()? ? ? ?

看這個例子:


sh := os.Getenv("SHELL") //fetch default shell

//execute the needed command with `-c` flag

cmd := exec.Command(sh, "-c ", `docker exec 9aa1124 ...`)

或者這個,首先將命令放入字符串中:


cmd := "cat /proc/cpuinfo | egrep '^model name' | uniq | awk '{print substr($0, index($0,$4))}'"

out, err := exec.Command("bash","-c",cmd).Output()

if err != nil {

? ? return fmt.Sprintf("Failed to execute command: %s", cmd)

}


查看完整回答
反對 回復 2023-06-26
?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

多通道執(zhí)行 kube-node-one -- bash -c "ls && ls -a"



查看完整回答
反對 回復 2023-06-26
?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

有什么方法可以在 exec.Command 中執(zhí)行多個命令

不。


查看完整回答
反對 回復 2023-06-26
  • 3 回答
  • 0 關注
  • 423 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號