linux下删除某个目录下大量文件办法
在lamp架构里,因为设置session 超时时间为一天,所以遇到php产生的session大量存在/data/tmp目录下,数量大概有200万,并且不能及时回收。使用 rm -fr /data/tmp/sess_* 不能删除,rm命令会提示参数太多。
后,使用rsync同步删除命令实现,完美实现了批量删除大量垃圾文件操作。具体步骤如下:
大量文件存在的目录:/data/tmp
使用命令:
#cd /data
#mkdir -pv /data/null # 建立临时空目录
#rsync -process –delete -rv null/ tmp/
这样可以批量删除,文件太大,可以放在后台执行:
#nohup rsync -process –delete -rv null/ tmp/ &
原理就是使用rsync 对源目录同步不存在的话,删除目标文件