shell脚本清除squid缓存

使用Shell脚本获取Squid缓存服务器上的特定文件地址
本文介绍了一个利用Shell脚本自动从Squid缓存服务器中查找并列出特定类型文件(如swf, png, jpg等)的完整URL路径的教程。该脚本适用于Centos5.4 x86_64环境下运行的Squid2.7服务器。通过过滤文件类型并使用Squidclient命令进行URL更新操作,脚本实现了高效且准确的缓存网址采集。

此脚本是转自抚琴煮酒博客(http://yuhongchun.blog.51cto.com/1604432/838275),主要是增加if选项,并根据$1参数类型来选择性的列出缓存文件所在地址(因为$1并不固定,有时是特定的jpg类型,有时是域名)目前在自己的Squid缓存服务器上应用,感觉采集缓存网址基本上没什么误差了,欢迎大家试用,争取将此脚本做到更加完美(此脚本在Centos5.4 x86_64,Squid2.7下通过)脚本内容如下:

#!/bin/sh
squidcache_path="/data/squid/cache"
squidclient_path="/usr/local/squid2.7/bin/squidclient"
if [[ "$1" =~ swf|png|jpg|ico|gif|css|js|htm|html|shtml ]]; then
grep -a -r .$1 $squidcache_path/* | strings | grep "http:" | awk -F 'http:' '{print "http:"$2;}' |  awk -F\' '{print $1}' > cache.txt
else
grep -a -r $1 $squidcache_path/* | strings | grep "http:" | awk -F 'http:' '{print "http:"$2;}' |  awk -F\' '{print $1}' > cache.txt
fi
while read LINE
do
$squidclient_path -h 172.16.8.102 -p 80 -m PURGE $LINE
done < cache.txt


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值