带来一篇扫除指定squid缓存文件的剧本代码分享
开发linux发行版的人都是通读过linux内核代码,对linux原理极其精通的人。squid会依据用户哀求网页的URL举行哈希,天生缓存文件,寄存在某一个目次中。squid启动以后,将在内存中创建一个哈希表,纪录硬盘中缓存文件设置的情况。
关于相似http://jb51.net/index.html之类的网页,squid只会天生一个缓存文件。能够用squid附带的squidclient工具扫除:
squidclient-mPURGE-p80“http://jb51.net/index.html”
而关于带有参数的网页,比方新浪播客的Flash播放器http://vhead.blog.sina.com.cn/player/outer_player.swf?auto=0&vid=4469852&uid=1278987704,因”?”前面的参数分歧,招致URL也分歧,squid会天生多个缓存文件,哈希分离寄存在分歧的目次。假如修正了这个outer_player.swf文件,要更新squid缓存就要往扫除分歧目次下及内存中的良多个缓存文件,非常贫苦,因而我编写了一个Linux下的shell剧本,往完成这件贫苦的事:
剧本文件名:clear_squid_cache.sh
下载:
.代码以下:
clear_squid_cache.sh#!/bin/sh
squidcache_path="/cache/"
squidclient_path="/usr/local/squid/bin/squidclient"
grep-a-r$1$squidcache_path/*|strings|grep"http:"|awk-Fhttp:{print"http:"$2;}>cache_list.txt
forurlin`catcache_list.txt`;do
$squidclient_path-mPURGE-p80$url
done
注重:请付与clear_squid_cache.sh可实行权限(命令:chmod+x./clear_squid_cache.sh)。请确保剧本地点目次可写。
设置:
squidcache_path=暗示squid缓存目次的路径
squidclient_path=暗示squidclient程序地点的路径,默许为squid安装目次下的bin/squidclient
用法:
1、扫除一切Flash缓存(扩大名.swf):
./clear_squid_cache.shswf
2、扫除URL中包括sina.com.cn的一切缓存:
./clear_squid_cache.shjb51.net
3、扫除文件名为zhangyan.jpg的一切缓存:
./clear_squid_cache.shtest.jpg
效力:
经测试,在DELL2950上扫除26000个缓存文件用时2分钟摆布。均匀每秒可扫除缓存文件177个。
给你装的系统里为ubuntu12.04,它已经封装的很臃肿了,但是考虑到你没有很多时间投入其中,所以给你装了它,但是怎么用它提高开发效率,需要你在学习的过程中不断总结; 我想即使Linux高手也很难快速准确精练的回答你。 学习Linux,应该怎样学,主要学些什么,一位Linux热心学习者,一段学习Linux的风云经验,历时十二个小时的思考总结,近十位网络Linux学习者权威肯定,为您学习Linux指明方向。 学习Linux半年了~个人认为不会的多在网上找资料网上有很多资料可以搜索到,LS那位说放手去搞。 Linux?最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以Linux操作系统有着广泛的应用空间。 对Linux命令熟悉后,你可以开始搭建一个小的Linux网络,这是最好的实践方法。Linux是网络的代名词,Linux网络服务功能非常强大,不论是邮件服务器、Web服务器、DNS服务器等都非常完善。 即便是非英语国家的人发布技术文档,Linux也都首先翻译成英语在国际学术杂志和网络上发表。 虽然大家都比较喜欢漂亮的mm,但是在学 linux 的过程中,还是要多和“男人”接触一下:P 遇到问题的时候,出来看说和上网查之外,就是要多用 linux 下的 man 命令找找帮助。
页:
[1]