代碼:其實主要是調用tasklist和taskkill
package main import ( "fmt" "log" "os/exec" ) func main() { var inputStr string for { fmt.Println("---------------------------------------------------") fmt.Print("1->退出 ") fmt.Print("2->顯示進程 ") fmt.Print("3->結束進程 ") fmt.Println("4->顯示全部進程") fmt.Println("---------------------------------------------------") fmt.Scanln(&inputStr) if inputStr == "1" { fmt.Println("已退出...") break } else if inputStr == "2" { fmt.Print("請輸入進程名稱:") var processName string fmt.Scanln(&processName) if len(processName) == 0 { fmt.Println("進程名稱不可為空!") } else { text := "imagename eq " + processName + "*" listProcess(text) } } else if inputStr == "3" { fmt.Print("請輸入要結束的進程名稱:") var processName string fmt.Scanln(&processName) if len(processName) == 0 { fmt.Println("進程名稱不可為空!") } else { text := "imagename eq " + processName + "*" killProcess(text) } } else if inputStr == "4" { listAllProcess() } else { fmt.Println("請輸入正確的參數!") } } fmt.Scanln(&inputStr) } func listProcess(text string) { fmt.Println(text) cmd := exec.Command("tasklist", "/fi", text) out, err := cmd.CombinedOutput() if err != nil { log.Fatal(err) } fmt.Println(string(out)) } func listAllProcess() { cmd := exec.Command("tasklist") out, err := cmd.CombinedOutput() if err != nil { log.Fatal(err) } fmt.Println(string(out)) } func killProcess(text string) { cmd := exec.Command("taskkill", "/f", "/t", "/fi", text) out, err := cmd.CombinedOutput() if err != nil { log.Fatal(err) } fmt.Println(string(out)) }