删除大量的文件

今天删除一个文件夹里有大概12w个文件,用:
rm web/data/images/* -rf
的时候总是报错:
-bash: /bin/rm: Liste d'arguments trop longue


 ls -1 web/data/images/ | wc -l

118660


 egrep ARG_MAX /usr/include/linux/limits.h

#define ARG_MAX       131072    /* # bytes of args + environ for exec() */

可以用find delete 来绕开这个限制:



find web/data/images/ -name '*.*' -print0 | xargs -0 rm -f
find web/data/thumbs/ -name '*.*' -print0 | xargs -0 rm -f
这样就成了。 删除30天之前的文件; find image/ -name "*.*" -mtime +30 -print0 | xargs -0 rm -f

评论

热门帖子