12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package util
- import (
- "os/exec"
- )
- func GetSubProcessPid(pid string) (string, error) {
- pgrepCmd := exec.Command("pgrep", "-P", pid)
- output, err := pgrepCmd.CombinedOutput()
- if err != nil {
- return "", err
- }
- return string(output), nil
- }
- func ExecuteWithPath(path string, name string, arg ...string) (*exec.Cmd, error) {
- // 创建一个Cmd对象,表示要执行的命令
- cmd := exec.Command(name, arg...)
- // 指定目录
- cmd.Dir = path
- err := cmd.Start()
- if err != nil {
- return nil, err
- } else {
- // 执行命令并等待它完成d
- return cmd, nil
- }
- }
- func Execute(name string, arg ...string) (*exec.Cmd, string, error) {
- cmd := exec.Command(name, arg...)
- combinedOutput, err := cmd.CombinedOutput()
- if err != nil {
- return nil, "", err
- }
- return cmd, string(combinedOutput), nil
- }
- func KillProcessByPID(pid string) error {
- cmd := exec.Command("kill", "-9", pid)
- err := cmd.Run()
- if err != nil {
- return err
- }
- return nil
- }
|