linux删除大量文件的6种方法

linux删除大量文件的6种方法,第1张

1. rm

由于文件数量过多,rm不起作用。

2. find

大概43分钟。

3. find with delete

用时9分钟。

4. rsync

首先建立空文件夹blanktest

16s,很好很强大。

5. Python

大概用时8分钟。

6. Perl

linux下快速删除大量文件假如你要在linux下删除大量文件,比如100万、1000万,像/var/spool/clientmqueue/的mail邮件,像/usr/local/nginx/proxy_temp的nginx缓存等,那么rm -rf *可能就不好使了。rsync提供了一些跟删除相关的参数 rsync --help grep delete --del an alias for --delete-during --deletedelete files that don't exist on the sending side --delete-before receiver deletes before transfer (default) --delete-during receiver deletes during transfer, not before --delete-after receiver deletes after transfer, not before --delete-excludedalso delete excluded files on the receiving side --ignore-errors delete even if there are I/O errors --max-delete=NUMdon't delete more than NUM files其中--delete-before 接收者在传输之前进行删除 *** 作可以用来清空目录或文件,如下:1、先建立一个空目录mkdir /data/blank2、用rsync删除目标目录rsync --delete-before -d /data/blank/ /var/spool/clientmqueue/这样目标目录很快就被清空了又假如你有一些特别大的文件要删除,比如nohup.out这样的实时更新的文件,动辄都是几十个G上百G的,也可 以用rsync来清空大文件,而且效率比较高1、创建空文件touch /data/blank.txt2、用rsync清空文件rsync -a --delete-before --progress --stats /root/blank.txt /root/nohup.outbuilding file list ...1 file to considerblank.txt 0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/1)Number of files: 1Number of files transferred: 1Total file size: 0 bytesTotal transferred file size: 0 bytesLiteral data: 0 bytesMatched data: 0 bytesFile list size: 27File list generation time: 0.006 secondsFile list transfer time: 0.000 secondsTotal bytes sent: 73Total bytes received: 31 sent 73 bytes received 31 bytes 208.00 bytes/sectotal size is 0 speedup is 0.00tips:当SRC和DEST文件性质不一致时将会报错当SRC和DEST性质都为文件【f】时,意思是清空文件内容而不是删除文件当SRC和DEST性质都为目录【d】时,意思是删除该目录下的所有文件,使其变为空目录最重要的是,它的处理速度相当快,处理几个G的文件也就是秒级的事最核心的内容是:rsync实际上用的就是替换原理作者 张慧

linux下如果系统垃圾改变的多,会导致系统的空间不足,使用df -h可以看到哪个用户的目录下的空间使用率比较大,如果较大,就需要执行一些命令来使系统瘦身:

1,sudo apt-get autoclean

sudo apt-get clean

sudo apt-get autoremove

这三个命令主要清理升级缓存以及无用包的

2,清理opera/firefox的缓存文件:

ls ~/.opera/cache4|xargs rm -f

ls ~/.mozilla/firefox/*.default/Cache|xargs rm -f

3,清理Linux下孤立的包:

图形界面下我们可以用:gtkorphan

sudo apt-get install gtkorphan -y

终端命令下我们可以用:deborphan

sudo apt-get install deborphan -y

4,删除多余的内核

打开终端敲命令:dpkg --get-selections|grep linux

有image的就是内核文件

删除老的内核文件:

sudo apt-get remove 内核文件名 (例如:linux-image-2.6.27-2-generic)

内核删除,释放空间了,应该能释放130-140M空间。

最后看看当前内核:uname -a

5,清空某个目录下所有log日志:

for i in `ls *.log*`

do

cat /dev/null >$i

done


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7375552.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-04
下一篇2023-04-04

发表评论

登录后才能评论

评论列表(0条)

    保存