Самый элегантный способ проверить, запущен ли процесс, и начать, если нет?

Я использовал разные способы сделать это в bash, и я нашел pgrep program > /dev/null || program самым коротким / самым изящным способом сделать это. Есть ли лучший способ, чем это?

7
задан 26 August 2010 в 12:06

22 ответа

С pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof.

Вы также можете использовать start-stop-daemon с PID-файлом. start-stop-daemon будет проверять, запущена ли программа, и запустить ее, если это необходимо. Это то, что используется в большинстве скриптов init.

8
ответ дан 26 May 2018 в 01:28
  • 1
    Пройдите через man-файл start-stop-daemon, и это выглядит красиво. Спасибо за понимание! – aperson 26 August 2010 в 13:26
  • 2
    Вы также можете быть заинтересованы в библиотеке /lib/lsb/init-functions, в которой большинство скриптов инициализации скриптов используют функции-обертки, такие как start_daemon или pidofproc. – ℝaphink 26 August 2010 в 13:41

С pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof.

Вы также можете использовать start-stop-daemon с PID-файлом. start-stop-daemon будет проверять, запущена ли программа, и запустить ее, если это необходимо. Это то, что используется в большинстве скриптов init.

8
ответ дан 25 July 2018 в 23:16

С pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof.

Вы также можете использовать start-stop-daemon с PID-файлом. start-stop-daemon будет проверять, запущена ли программа, и запустить ее, если это необходимо. Это то, что используется в большинстве скриптов init.

8
ответ дан 27 July 2018 в 03:33

С pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof.

Вы также можете использовать start-stop-daemon с PID-файлом. start-stop-daemon будет проверять, запущена ли программа, и запустить ее, если это необходимо. Это то, что используется в большинстве скриптов init.

8
ответ дан 31 July 2018 в 11:13

С pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof.

Вы также можете использовать start-stop-daemon с PID-файлом. start-stop-daemon будет проверять, запущена ли программа, и запустить ее, если это необходимо. Это то, что используется в большинстве скриптов init.

8
ответ дан 31 July 2018 в 12:13

С помощью pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof .

Вы также можете использовать start-stop-daemon с PID-файлом , start-stop-daemon будет проверять, запущена ли программа и запустить ее, если потребуется. Это то, что используется в большинстве скриптов init.

8
ответ дан 2 August 2018 в 04:32

С помощью pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof .

Вы также можете использовать start-stop-daemon с PID-файлом , start-stop-daemon будет проверять, запущена ли программа и запустить ее, если потребуется. Это то, что используется в большинстве скриптов init.

8
ответ дан 4 August 2018 в 21:06

С помощью pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof .

Вы также можете использовать start-stop-daemon с PID-файлом , start-stop-daemon будет проверять, запущена ли программа и запустить ее, если потребуется. Это то, что используется в большинстве скриптов init.

8
ответ дан 6 August 2018 в 04:36

С помощью pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof .

Вы также можете использовать start-stop-daemon с PID-файлом , start-stop-daemon будет проверять, запущена ли программа и запустить ее, если потребуется. Это то, что используется в большинстве скриптов init.

8
ответ дан 7 August 2018 в 22:46

С помощью pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof .

Вы также можете использовать start-stop-daemon с PID-файлом , start-stop-daemon будет проверять, запущена ли программа и запустить ее, если потребуется. Это то, что используется в большинстве скриптов init.

8
ответ дан 10 August 2018 в 10:52

С помощью pgrep вы можете сопоставлять другие программы, нежели ваши. Если вы хотите быть уверенным в правильной программе, используйте pidof .

Вы также можете использовать start-stop-daemon с PID-файлом , start-stop-daemon будет проверять, запущена ли программа и запустить ее, если потребуется. Это то, что используется в большинстве скриптов init.

8
ответ дан 13 August 2018 в 17:26
  • 1
    Пройдите через man-файл start-stop-daemon, и это выглядит красиво. Спасибо за понимание! – aperson 26 August 2010 в 13:26
  • 2
    Вы также можете быть заинтересованы в библиотеке / lib / lsb / init-functions , которую большинство скриптов инициализации используют для использования таких функций-оболочек, как start_daemon или pidofproc . – ℝaphink 26 August 2010 в 13:41
[F1]
1
ответ дан 26 May 2018 в 01:28
  • 1
    Не могли бы вы объяснить OP, что делать с этой командой? – hexafraction 17 August 2012 в 01:14
[F1]
1
ответ дан 25 July 2018 в 23:16
  • 1
    Не могли бы вы объяснить OP, что делать с этой командой? – hexafraction 17 August 2012 в 01:14
[F1]
1
ответ дан 27 July 2018 в 03:33
  • 1
    Не могли бы вы объяснить OP, что делать с этой командой? – hexafraction 17 August 2012 в 01:14
[F1]
1
ответ дан 31 July 2018 в 11:13
  • 1
    Не могли бы вы объяснить OP, что делать с этой командой? – hexafraction 17 August 2012 в 01:14
[F1]
1
ответ дан 31 July 2018 в 12:13
  • 1
    Не могли бы вы объяснить OP, что делать с этой командой? – hexafraction 17 August 2012 в 01:14
  [-z `pidof program`] ||  echo «запуск программы» # или [-z `pidof program`] & amp; & amp; & amp;  OtherProgram  
1
ответ дан 2 August 2018 в 04:32
  [-z `pidof program`] ||  echo «запуск программы» # или [-z `pidof program`] & amp; & amp; & amp;  OtherProgram  
1
ответ дан 4 August 2018 в 21:06
  [-z `pidof program`] ||  echo «запуск программы» # или [-z `pidof program`] & amp; & amp; & amp;  OtherProgram  
1
ответ дан 6 August 2018 в 04:36
  [-z `pidof program`] ||  echo «запуск программы» # или [-z `pidof program`] & amp; & amp; & amp;  OtherProgram  
1
ответ дан 7 August 2018 в 22:46
  [-z `pidof program`] ||  echo «запуск программы» # или [-z `pidof program`] & amp; & amp; & amp;  OtherProgram  
1
ответ дан 10 August 2018 в 10:52
  [-z `pidof program`] ||  echo «запуск программы» # или [-z `pidof program`] & amp; & amp; & amp;  OtherProgram  
1
ответ дан 13 August 2018 в 17:26
  • 1
    Не могли бы вы объяснить OP, что делать с этой командой? – hexafraction 17 August 2012 в 01:14

Другие вопросы по тегам:

Похожие вопросы: