Предотвращение повторения сообщений rsyslog с разными уровнями приоритета

Вы можете просто использовать command -v, чтобы проверить, установлен ли он, код возврата в условии if поможет вам установить, если он не уже установлен

apt-get update
programs=(bc nmap coreutils xmlstarlet)

for program in "${programs[@]}"; do
    if ! command -v "$program" > /dev/null 2>&1; then
        apt-get install "$program" -y
    fi
done

Опция command -vсоответствует стандарту POSIX. Вы можете запустить apt-get updateтолько один раз, а не для каждой итерации цикла. Также вы определили programsкак переменную, которая должна была быть массивом для итерации.

1
24.01.2020, 03:57
1 ответ

Для простых фильтров rsyslog имеет множество расширений исходной версии BSD, включая:

You may precede every priority with an equals sign (“=’‘) to specify only this single priority and not any of the above.

Попробуйте *.=errи так далее.

1
28.04.2021, 23:25

Теги

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