飘灵儿 发表于 2015-1-16 14:41:01

带来一篇扫除指定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,它已经封装的很臃肿了,但是考虑到你没有很多时间投入其中,所以给你装了它,但是怎么用它提高开发效率,需要你在学习的过程中不断总结;

乐观 发表于 2015-1-18 15:06:50

我想即使Linux高手也很难快速准确精练的回答你。

只想知道 发表于 2015-1-25 11:06:16

学习Linux,应该怎样学,主要学些什么,一位Linux热心学习者,一段学习Linux的风云经验,历时十二个小时的思考总结,近十位网络Linux学习者权威肯定,为您学习Linux指明方向。

若相依 发表于 2015-2-2 21:56:47

学习Linux半年了~个人认为不会的多在网上找资料网上有很多资料可以搜索到,LS那位说放手去搞。

莫相离 发表于 2015-2-8 08:22:00

Linux?最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以Linux操作系统有着广泛的应用空间。

小魔女 发表于 2015-3-7 18:10:15

对Linux命令熟悉后,你可以开始搭建一个小的Linux网络,这是最好的实践方法。Linux是网络的代名词,Linux网络服务功能非常强大,不论是邮件服务器、Web服务器、DNS服务器等都非常完善。

谁可相欹 发表于 2015-3-15 11:17:32

即便是非英语国家的人发布技术文档,Linux也都首先翻译成英语在国际学术杂志和网络上发表。

兰色精灵 发表于 2015-3-22 01:08:00

虽然大家都比较喜欢漂亮的mm,但是在学 linux 的过程中,还是要多和“男人”接触一下:P 遇到问题的时候,出来看说和上网查之外,就是要多用 linux 下的 man 命令找找帮助。
页: [1]
查看完整版本: 带来一篇扫除指定squid缓存文件的剧本代码分享