Написал вот такой скрипт, который будет при необходимости обновлять запись IP-адреса в конфигурационном файле tinyproxy:
#!/bin/sh
# AddHeader "X-Forwarded-For: 127.0.0.1"
while true; do
echo "$(date '+%Y-%m-%d %H:%M:%S')"
ip="$(curl -s 'https://ifconfig.me/ip')"
oldip="$(grep 'AddHeader "X-Forwarded-For: ' /etc/tinyproxy/tinyproxy.conf)"
if [ "${oldip}" = 'AddHeader "X-Forwarded-For: ${ip}"' ]; then
echo 'eq'
else
echo 'neq'
echo "${ip}\n${oldip}"
echo 'Обновление IP-адреса...'
sed -i 's/X-Forwarded-For: [^\}]\+\}/X-Forwarded-For: ${ip}\}/g' /etc/tinyproxy/tinyproxy.conf
echo 'Перезапуск службы tinyproxy...'
rc-service tinyproxy restart
fi;
echo 'Перерыв в 10 секунд'
sleep 10s
done
Не получилось ли слишком монструозно? Как будет красивей?
P. S. Менять shell на пистон — не предлагать.