Подсчёт экземпляров процесса

Автор Master_Sergius, 27 мая 2014, 17:47:00

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Master_Sergius

Здравствуйте! У меня есть скрипт, который делает нечто несколько секунд. При этом, его поведение должно чуточку меняться, если уже есть запущенный экземпляр этого скрипта. Каким образом лучше считать количество запущенных экземпляров - через "ps aux" или с помощью файлика в /tmp? Или ещё есть какие-то интересные варианты?
Мой блог о семействе *nix: http://nixtravelling.blogspot.com/

yura_n

Вы можете использовать pidof, а затем посчитать (в скрипте) количество процессов. Например:

pidof bash


ogost

Цитата: yura_n от 27 мая 2014, 18:52:21
Вы можете использовать pidof, а затем посчитать (в скрипте) количество процессов. Например:

pidof bash


век живи век учись, спасибо, пойду поправлю свои скрипты-костыли
получить кол-во процессов: pidof bash | wc -w

Master_Sergius

Хм... Хороший вариант, но... у меня скрипт питоновский, получается, я могу получить список по питону, а не конкретно по скрипут. А если в это время крутится ещё что-то?
Мой блог о семействе *nix: http://nixtravelling.blogspot.com/

ogost

Master_Sergius, вы сами же не уточнили, что питон :D
в питоне сам только начинаю разбираться, знаю там есть возможность запускать и bash скрипты. только костыль это - вызов сторонних утилит. пхд лучше писать в /tmp какой-нибудь файл с pid.

Master_Sergius

Ну дык, должна же быть универсальная технология, которая не зависит от ЯП. Я пока что остановился на отдельной процедуре, которая будет через ps брать, а то ещё погемориться с записью/чтением файла, а если вдруг один процесс пытается прочитать, а второй записать, мало ли )
Но, если ещё есть варианты, приму с благодарностью
Мой блог о семействе *nix: http://nixtravelling.blogspot.com/

Master_Sergius

Нет, всё-таки решил использовать файл, так как нужно ещё один параметр записывать/считывать. Может это лучше через сокеты, как думаете?
Мой блог о семействе *nix: http://nixtravelling.blogspot.com/

Master_Sergius

Мой блог о семействе *nix: http://nixtravelling.blogspot.com/