1. 删除core目录确认和不确认的两种情况
find . -name core -exec rm {} \; /* 删除core */
find . -name core -ok rm {} \; /* 删除core 带确认 */
2.访问和修改
/* access */
find $HOME -atime -1 -print;
/* modify */
find $HOME -mtime -1 -print;
3. /* 查找*.o 或 a.out 7天之内没存取过的并删除 */
find . \( -name a.out -o -name *.o \) -atime +7 -exec rm {} \;
4, 搜寻ZhXwin下所有C原代码中的"Chinput"(试试取消下行的-q参数):
find /download/ZhXwin -name *.c -exec grep -q -s Chinput {} \; -print
查找所有文件则可以用:
find . -type f -exec grep -s chinese {} \; -print
5, 利用Find命令改变所有权 想要改变当前目录下所有文件的所有权,可以这样:
find . -exec chown OWNER.[GROUP] {} \; (Solaris)
find . -exec chown -R OWNER.[GROUP] {} \; (Linux)
6.一个find查询的实例:
find ./ -maxdepth 1 -type f -name "*${datestr}*" ! -name "*.gz" -exec gzip {} \;
find ./ -maxdepth 1 -type f -name "*${datestr}*" -name "*.gz" -exec mv {} ${LOGFILEPATH}/ \;
格式: find [path...] [expression]
find / -name access_log 2>/dev/null 不显示错误信息
find /-amin n ##查找系统中最后N分钟访问的文件
find /-atime n ##查找系统中最后n*24小时访问的文件
find /-cmin n ##查找系统中最后N分钟被改变状态的文件
find /-ctime n ##查找系统中最后n*24小时被改变状态的文件
find /-empty ##查找系统中空白的文件,或空白的文件目录,或目录中没有子目录的文件夹
find /-false ##查找系统中总是错误的文件
find /-fstype type ##查找系统中存在于指定文件系统的文件,例如:ext2 .
find /-gid n ##查找系统中文件数字组 ID 为 n的文件
find /-group gname ##查找系统中文件属于gnam文件组,并且指定组和ID的文件
find / -mmin n # 查找在系统中最后n分钟里修改过的文件
find / -mtime n #查找在系统中最后24*n小时里修改过的文件
find / -nouser #查找在系统中属于作废用户的文件
find / -size nc #查找在系统中长度为n字节的文件
find / -size +nc #查找在系统中长度大于n字节的文件
find / -daystart ##测试系统从今天开始24小时以内的文件,用法类似-amin
find / -depth ##使用深度级别的查找过程方式,在某层指定目录中优先查找文件内容
find / -follow ##遵循通配符链接方式查找; 另外,也可忽略通配符链接方式查询
find / -help ##显示命令摘要
find / -maxdepth levels ##在某个层次的目录中按照递减方法查找
find / -mount ##不在文件系统目录中查找, 用法类似 -xdev.
find / -noleaf ##禁止在非UNUX文件系统,MS-DOS系统,CD-ROM文件系统中进行最优化查找
find / -version ##打印版本数字
-exec command; ##查找并执行命令
-fprint file ##打印文件完整文件名
-fprint0 file ##打印文件完整文件名包括空的文件
-fprintf file format ##打印文件格式
-ok command; ##给用户命令执行操作,根据用户的Y 确认输入执行
-printf format ##打印文件格式
-ls ##打印同种文件格式的文件.
几个参数之间可以用-and,-or连接,某个参数取反可用!.