在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Windows环境下做开发的时候经常需要批量结束进程,比如java.exe ,于是写了这个小工具,输入模糊的进程名,自动批量结束进程 1 package main 2 3 import ( 4 "fmt" 5 "log" 6 "os/exec" 7 ) 8 9 func main() { 10 var inputStr string 11 for { 12 fmt.Println("---------------------------------------------------") 13 fmt.Print("1->退出 ") 14 fmt.Print("2->显示进程 ") 15 fmt.Print("3->结束进程 ") 16 fmt.Println("4->显示全部进程") 17 fmt.Println("---------------------------------------------------") 18 fmt.Scanln(&inputStr) 19 if inputStr == "1" { 20 fmt.Println("已退出...") 21 break 22 } else if inputStr == "2" { 23 fmt.Print("请输入进程名称:") 24 var processName string 25 fmt.Scanln(&processName) 26 if len(processName) == 0 { 27 fmt.Println("进程名称不可为空!") 28 } else { 29 text := "imagename eq " + processName + "*" 30 listProcess(text) 31 } 32 } else if inputStr == "3" { 33 fmt.Print("请输入要结束的进程名称:") 34 var processName string 35 fmt.Scanln(&processName) 36 if len(processName) == 0 { 37 fmt.Println("进程名称不可为空!") 38 } else { 39 text := "imagename eq " + processName + "*" 40 killProcess(text) 41 } 42 } else if inputStr == "4" { 43 listAllProcess() 44 } else { 45 fmt.Println("请输入正确的参数!") 46 } 47 } 48 fmt.Scanln(&inputStr) 49 } 50 51 func listProcess(text string) { 52 cmd := exec.Command("tasklist", "/fi", text) 53 out, err := cmd.CombinedOutput() 54 if err != nil { 55 log.Fatal(err) 56 } 57 fmt.Println(string(out)) 58 } 59 func listAllProcess() { 60 cmd := exec.Command("tasklist") 61 out, err := cmd.CombinedOutput() 62 if err != nil { 63 log.Fatal(err) 64 } 65 fmt.Println(string(out)) 66 } 67 68 func killProcess(text string) { 69 cmd := exec.Command("taskkill", "/f", "/t", "/fi", text) 70 out, err := cmd.CombinedOutput() 71 if err != nil { 72 log.Fatal(err) 73 } 74 fmt.Println(string(out)) 75 }
|
请发表评论