LINUX.ORG.RU
ФорумAdmin

squid подключение списка easylist

 , , ,


0

1

Есть большое желание подключить список easylist, да так чтоб кронтабом все обновлялось. Список специфический и к сквиду не прикрутишь, пропустив его через комбаин фильтров получается более менее вменяемый список, пока вот что:

/bin/rm -f /etc/squid/adlock/easyprivacy.txt*; /usr/bin/wget --no-check-certificate -P /etc/squid/adlock/  https://easylist-downloads.adblockplus.org/easyprivacy.txt ; /bin/grep "||" /etc/squid/adlock/easyprivacy.txt | grep -v "/" | grep -v "*" | awk -F "[||,^]" '{ print "."$3; }' | grep -v '^\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$' | sort | uniq > /etc/squid/adlock/dstdomain.txt

Все бы ничего, но сквид начинает ругатся

2015/08/26 10:32:46| WARNING: '.ad7.bigmir.net' is a subdomain of '.bigmir.net'
2015/08/26 10:32:46| WARNING: because of this '.bigmir.net' is ignored to keep splay tree searching predictable
2015/08/26 10:32:46| WARNING: You should probably remove '.ad7.bigmir.net' from the ACL named 'adlock'

Подскажите плиз как бы лучше убрать из списка .bigmir.net а оставить .ad7.bigmir.net, и применить этот фильтр к остальным доменам где повторяется домен и субдомен, но не убирать остальные домены второго уровня где нет повторов домена и субдомена.

вроде как обьяснил

★★★

В цикле перебирать все строки и сравнивать, как-то так:

cat /etc/squid/adlock/dstdomain.txt | while read D ; do
   grep -q -s ${D//./\\.}"$" /etc/squid/adlock/dstdomain.txt  && continue
   echo $D
done > dstdomain-N.txt

mky ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.