從Go 執行內建Linux 指令
嘗試使用exec.Command(" 決定Linux 上是否存在程式時指令」、「-v 」、「foo」)語法時,您可能會遇到錯誤,指出在$PATH 中找不到「command」。這是因為「命令」是內建的 Linux Shell,而不是可執行的二進位。
要從Go 執行內建指令,您有幾個選項:
1.使用exec.LookPath:
根據提供的文章中的建議,您可以使用exec.LookPath 函數在$PATH 中搜尋您需要執行的命令。
path, err := exec.LookPath("command") if err != nil { // Handle error } // Use path to execute the command
2.使用外部Shell 呼叫:
或者,您可以使用下列語法從shell 內呼叫指令:
exec.Command("/bin/bash", "-c", "command -v foo")
這將執行內建的“命令” Bash shell。
3.使用Shell執行:
如果需要執行多個指令或執行更複雜的操作,可以使用os/exec.Command函數來執行shell腳本:
cmd := exec.Command("sh", "my-script.sh") cmd.Run()
這將在目前shell 中執行my-script.sh 的內容。
以上是如何透過Go執行Linux內建指令?的詳細內容。更多資訊請關注PHP中文網其他相關文章!