查找含有某个字符串的文件(find&grep&xargs)
查找 当前目录下包含alias字符串的*.conf的文件
find . -name "*.conf" | xargs grep -H "alias"
find . -name "*.conf" -exec grep -H "alias" {} \;
1. grep -R -l 一些也可以实现,但是通过管道 | 比单纯用grep 复杂的参数更有效率。
2. xargs是用来展开find获得的结果,使其作为grep的参数。
当有大量结果时用xargs 参数
例子:
查找所有内容,并列出包含“Inbound”的文件
find /opt/sa/howard/ -type f -name "*.*" | xargs grep "Inbound"
find /opt/sa/howard/ -type f -name "*.*" | xargs grep "Related Results"
find . -name "*.conf" | xargs grep -H "alias"
find . -name "*.conf" -exec grep -H "alias" {} \;
找文件类型是目录一一文件名是c60**的文件列表存为1.TxT
find /home/howard/ -type d -name "C60*" >1.txt
/ du -sh *
查看当前目录下子目录大小〈占磁盘空间〉;
Find /home/l10n/ -type f -mtime +180 rm {} \;
//find /home/ -type f -mtime +3 -exec rm {} \;
查找home目录:超过3天的文件并删除
Find . -type f -mtime +3 -exec rm {} \;
Or
Find . -type f -mtime +3 I xargs rm
找文件类型是文件的 而且文件尺寸大于20M 而且超过100天的文件 并删除
find /var/spool/vmail -type f -size +20000k -mtime +100 -exec rm -fr {} \;
例子:
删除30天以前的文件
find /home/test -type f -mtime +30 -exec rm -fr {} \;
例子:文件提取方法 《转载》
#!/bin/bash
TARGET="/opt/www/html"
SRC="/opt/www/phpcms"
FIND_NAME="*.html"
find $SRC -name "${FIND_NAME}" | xargs -i install -Dm644 {} ${TARGET}/{}
阅读(140) | 评论(0) | 转发(0) |