Почему я не могу убить процесс в bash? - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть следующий скрипт:

firefox <url>
sleep 5
kill -9 $(pidof firefox)

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 23 апреля 2020

Вы можете сохранить pid в переменной для чистого решения оболочки.

firefox <url> & pid=$!
sleep 5
kill "$pid"
0 голосов
/ 22 апреля 2020

Когда я запускаю firefox в моей системе Linux (Ubuntu 18.04), команда firefox запускается как процесс переднего плана. Это означает, что команда sleep 5 никогда не запускается.

Вам нужно поместить процесс Firefox в фоновый режим, как показано ниже:

firefox <url> &
sleep 5
kill -9 $(pidof firefox)

Это работает для меня.

...