История изменений
Исправление smilessss, (текущая версия) :
спасибо
вы навели меня на верную мысль
Если имя процесса не изменяется, то он должен быть в выводе pgrep. Начните сравнивать, типа вывод ″pgrep″ в файл. Потом вывод ″ps ″ в файл, ″grep″ по файлу с вывода ps, sort, diff, чтобы убедиться, что ″pgrep″ работает корректно...
таки да, всё работает корректно, просто моя логика была некорректная, я почему-то подумал, что pgrep всегда отдаёт данные в алфавитном порядке...
между тем, как ″pgrep″ выдаст pid и тем, как ″pwdx″ полезет в ″/proc/PID″ проходит заметное время, за которое ваш процесс может перезапуститься. Может нужно как-то читать /proc/PID/cmdline и /proc/PID/cwd почти одновременно, а потом фильтровать вывод.
там вроде pgrep и pwdx мгновенно отрабатывают, процессы так часто не перезапускаются, я просто в своей лапше опирался на непровереное поведение, которое сам себе придумал)
Исходная версия smilessss, :
спасибо
вы навели меня на верную мысль
Если имя процесса не изменяется, то он должен быть в выводе pgrep. Начните сравнивать, типа вывод ″pgrep″ в файл. Потом вывод ″ps ″ в файл, ″grep″ по файлу с вывода ps, sort, diff, чтобы убедиться, что ″pgrep″ работает корректно...
таки да, всё работает корректно, просто моя логика была некорректная, я почему-то подумал, что pgrep всегда отдаёт данные в алфавитном порядке...