Я создал скрипт с именем checkrest
и поместил его с правами на выполнение в каталог /bin
. Сценарий проверяет, требуется ли перезапуск приложением, и если да, то проверяет, какое приложение (я). Я нахожу это довольно полезным, так как в противном случае мне приходится много работать вручную, чтобы выяснить, нужно ли перезапускать что-либо в моей системе.
Сейчас мне нужно запускать это вручную, но я бы нашел, что это было бы гораздо полезнее, если бы я мог запускать его каждый раз после выполнения команды APT, которая вносит изменения в мою систему. Или после того, как я выполню команду dpkg
, которая вносит изменения в мою систему. Так, например, после установки, удаления или настройки любого программного обеспечения, я бы хотел, чтобы оно автоматически выполняло этот маленький скрипт, который я создал. Так каков лучший способ сделать это? Но я также хотел бы делать подобные вещи с другими заказными скриптами, так как же вообще такие вещи делаются?
Информация об ОС:
Description: Ubuntu 15.04
Release: 15.04
Вот сценарий ленивого человека для получения сделанного задания (рассмотрение, что только один экземпляр процесса работает):
#!/bin/bash
while [ -h /proc/"$(pgrep apt-get)"/exe ]; do
sleep 10
done
echo "DONE"
Замена echo "DONE"
с тем, что Вы хотите сделать затем. Можно выполнить его как cron
задание.
Каждый процесс имеет каталог в /proc
присвоенный с их PID, полный путь к исполняемому файлу является symlinked как exe
внутренняя часть тот каталог. Здесь мы проверяем, существует ли тот файл и является символьной ссылкой.
Мы могли использовать [ -d /proc/PID ]
, но это даст нам, неправильно заканчиваются как тогда, когда значение PID
является пустым, это станет [ -d /proc ]
, который всегда существует, таким образом, сценарий будет работать неограниченно долго.