diff --git a/util.go b/util.go index d35070a..444d597 100644 --- a/util.go +++ b/util.go @@ -18,7 +18,17 @@ func GetProcessPIDs(name string) ([]int, error) { for _, entry := range dir { pid, err := strconv.Atoi(entry.Name()) if entry.IsDir() && err == nil { - f, err := os.ReadFile("/proc/" + entry.Name() + "/cmdline") + f, err := os.ReadFile("/proc/" + entry.Name() + "/comm") + if err != nil { + return nil, err + } + + if strings.Contains(string(f[:len(f)-1]), name) { + pids = append(pids, pid) + continue + } + + f, err = os.ReadFile("/proc/" + entry.Name() + "/cmdline") if err != nil { return nil, err }