欢迎喜欢linux技术的朋友共同交流
分类: LINUX
2013-01-17 18:11:17
工作中遇到各种各样的问题,通过baidu、google查询后很多小问题可以通过一句话命令帮助我们解决问题,简单高效:
1、删除重复的rpm包
# rpm -qa | grep openssl
openssl-0.9.8e-12.el5
openssl-devel-0.9.8e-12.el5
openssl-devel-0.9.8e-12.el5
openssl-0.9.8e-12.el5
命令:
#rpm -e --allmatches --nodeps openssl-0.9.8e-12.el5
查看结果
# rpm -qa | grep openssl
openssl-devel-0.9.8e-12.el5
openssl-devel-0.9.8e-12.el5
2、删除文件或文件夹
删除大量的文件(文件夹使用 -type d)
#find /var/spool/clientmqueue/ -type f -print|xargs rm
删除少量的文件(文件夹使用 -type d)
#find /var/spool/clientmqueue/ -type f -print -exec rm {} \;
3、find参数测试
#mkdir -p dir/{1,2,3}
#find dir
dir
dir/1
dir/3
dir/2
#find dir -depth
dir/1
dir/3
dir/2
dir
通过对比,得出两种方式搜索出的结果是相反的,直接find先搜索出当前目录,在继续搜索当前目录的下一级目录,添加-depth参数后,则先搜索最深的一层目录,再一次搜索上一层目录,只到当前目录为止。
#find dir -exec rmdir {} \;
rmdir: failed to remove `dir': Directory not empty
find: `dir/1': No such file or directory
find: `dir/3': No such file or directory
find: `dir/2': No such file or directory
因为删除顺序问题,所以在删除的时候出现报错
#mkdir -p dir/{1,2,3}
#find dir -depth -exec rmdir {} \;
因为从最深的一层目录开始删除,所以没有报错
#mkdir -p dir/{1,2,3};touch dir/1/test
#find dir -type d -empty
dir/3
dir/2
通过-type d -empty来找出空文件夹,所以结果中不含有dir/1
不定期更新,如果有更好的方法也请共享一下!