function check_file_content() {
local file_path=$1
local expected_content=$2
# Удаление пустых строк и пробелов
local actual_content=$(sed -e '/^[[:space:]]*$/d' "$file_path")
local expected_content_clean=$(echo "$expected_content" | sed -e '/^[[:space:]]*$/d')
# Сравнение содержимого
if [ "$actual_content" == "$expected_content_clean" ]; then
echo "Содержимое файла $file_path соответствует ожидаемому."
else
echo "Содержимое файла $file_path не соответствует ожидаемому."
fi
}
function check_strings_in_file {
local file="$1"
shift # Сдвигаем аргументы, чтобы остальные были строками
local all_found=true
for str in "$@"; do
if ! grep -qF "$str" "$file"; then
all_found=false
break
fi
done
if $all_found; then
echo "${file##*/} настроен"
else
echo "${file##*/} не настроен"
fi
}
check_strings_in_file "/etc/logrotate.d/syslog-ng" "/var/log/syslog" "{" " rotate 10" " size 10M" " daily" " missingok" " copytruncate" " notifempty" " compress" " delaycompress" " sharedscripts" " postrotate" " invoke-rc.d syslog-ng reload > /dev/null" " endscript" "}" >> $output_file
sudo sed -i '/\/var\/log\/syslog/,/}/d' /etc/logrotate.d/syslog-ng
sys_log=(
"/var/log/syslog"
"{"
" rotate 10"
" size 10M"
" daily"
" missingok"
" copytruncate"
" notifempty"
" compress"
" delaycompress"
" sharedscripts"
" postrotate"
" invoke-rc.d syslog-ng reload > /dev/null"
" endscript"
"}"
)
# Проходим по каждому элементу массива
for file in "${sys_log[@]}"; do
echo "$file" >> "/etc/logrotate.d/syslog-ng"
done
https://t.me/Esquisito