首頁 >後端開發 >Golang >如何從 Golang 執行 Windows 命令(如'del”)?

如何從 Golang 執行 Windows 命令(如'del”)?

Patricia Arquette
Patricia Arquette原創
2024-12-08 12:04:14283瀏覽

How to Execute Windows Commands (like `del`) from Golang?

從 Golang 執行 Windows 指令

嘗試使用 exec.Command("del", "c:\ aaa.txt」),您可能會遇到錯誤,表示在以下位置找不到該命令的可執行檔

出現此錯誤的原因是del等Windows命令內建於cmd shell中,並且沒有自己獨立的可執行檔。要在 Golang 中執行這些命令,您需要呼叫 cmd shell 並將命令作為參數傳遞。

要解決此問題,可以使用以下程式碼片段:

package main

import (
    "fmt"
    "os/exec"
    "runtime"
)

func main() {
    var c *exec.Cmd
    switch runtime.GOOS {
    case "windows":
        c = exec.Command("cmd", "/C", "del", "D:\a.txt")
    default: // Mac & Linux
        c = exec.Command("rm", "-f", "/d/a.txt")
    }

    if err := c.Run(); err != nil {
        fmt.Println("Error:", err)
    }
}

此程式碼檢查作業系統並在Windows 上執行del 命令或在其他作業系統上執行rm 命令,並將所需的文件路徑作為參數傳遞。

以上是如何從 Golang 執行 Windows 命令(如'del”)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn