得到了這個簡單的函式,它在退出狀態為 1 時拋出并出錯,而沒有進一步提示為什么會發生這種情況
func execute_this(cmd string ) string {
out, err := exec.Command("cmd","/C", cmd).Output()
if err != nil {
log.Fatal(err)
fmt.Println(out)
}
fmt.Println(string(out))
return string(out)
}
func main() {
var cmd string
var result string
cmd = "pwd"
result = execute_this(cmd)
fmt.Println(result)
}
拋出錯誤資訊
2021/10/27 01:12:06 exit status 1
exit status 1
目標是撰寫一個在shell中執行系統命令并將輸出作為字串回傳的函式
uj5u.com熱心網友回復:
試試這個,它還能讓你看到發送到 stderr 的輸出。詳情請看這里。
具體來說,就您而言,問題在于
'pwd' is not recognized as an internal or external command,
operable program or batch file.
package main
import (
"fmt"
"log"
"os/exec"
"os"
)
func execute_this(cmd string ) string {
c := exec.Command("cmd","/C", cmd)
c.Stderr = os.Stderr
out, err := c.Output()
if err != nil {
log.Fatal(err)
}
return string(out)
}
func main() {
cmd := "pwd"
result := execute_this(cmd)
fmt.Println(result)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/338475.html
標籤:走
