свободные блоки ext4 или служебные кластеры

Вы бы сделали что-то вроде:

#!/bin/bash

regex="plexdrive.*Could not update\/save object"

journalctl -f -n 0 |
while read line
do
    if [[ "$line" =~ $regex ]]; then
        systemctl restart PLEX_SERVICE
    fi
done

journalctlдает вам вывод системного журнала. -fиспользует режим отслеживания, так что команда находится там и дает вам новые записи в журнале. -n 0говорит ему не давать вам ни одной из предыдущих записей в журнале.

Вывод передается на while read line. Это бесконечно читает из выходного потока journalctl, помещая каждую строку в переменную оболочки line.

=~— это оператор регулярного выражения Баша. Здесь просто проверяется, что в строке есть plexdriveи где-то после этого Could not update/save object. Если регулярное выражение, обозначенное как regex, совпадает, то выполняется строкаsystemctl restart PLEX_SERVICE

0
27.06.2021, 19:28
0 ответов

Теги

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