find在Linux系统中和其它工具,如sed、awk、grep等结合起来用,非常有用。

1、列出系统中所有属于root用户的“set uid”文件

#find / -perm 4755 –uid 0 –type f –print
 

2、用inode号查找文件

#find / -inum 1877432         //从根目录开始查找inode号为1877432的文件
 

3、对查找到的每个文件执行某个命令

#find . -name "*.c" -exec wc -l '{}' ;              //对找到的每个文件执行wc -l命令统计行数
#find . -name "*.srt" -execdir cp '{}' /tmp ;  //拷贝当前目录包括子目录中的所有srt文件到/tmp目录下
#find . -name "*.srt" -execdir cp '{}' /tmp ';'
#find . -name "*.srt" -execdir cp {} /tmp ; 
相当于
#cp file1 /tmp;cp file2 /tmp;...
 

4、对查找到的所有文件执行某个命令

#find . -name "*.c" -exec wc -l '{}' +             //对查找到的所有文件执行wc -l命令 ,因而会打印总数,等于是把所有找到的文件作为一个字符串替换 {},然后执行命令
 
进一步的解释:
1.'{}'用来替换find查找的每个结果,需要用或单引号防止shell解释;
2. ; 也需要或单引号防止shell解释
3.+最后构建的命令行参数形式类似于xargs

5、使用通配符/正则表达式查找文件

#find . -name "*.c"    //通配符方式
#find . -regex ".*[.]c"   //正则表达式

6、多条件组合查找(-a,-o)

#find gcc/config -name linux64.h -o -name linux.h -o -name sysv4.h  //-o是or的意思
#find /home/cb/mp3 -name *.mp3 -o -name *.wav -o -name *.ape -o -name *.wma >/home/cb/mp3/mplayer.lst
 

7、按文件尺寸查找

#find ~/software -size +5000k    //找出software目录下尺寸大于5000k的文件
 
进一步解释:
-size:凡是+,就是>,-则是<
 

8、按修改时间查找

#find /home -mmin +60   //找出home目录下最近60分钟之前(1小时以前)有变动的文件或目录
#find /home -mtime -2    //找出home目录下最近2天之内(48小时以内)有变动的文件或目录
 
进一步解释:
-mmin,-mtime:凡是+号,就是xxx分钟(或天)之前;凡是-号,则是xxx分钟(或天)之内
 

9、防止搜索其它分区

#find / -xdev -name *.mp3   //-xdev用来防止搜索其它分区。
 

10、防止搜索子目录

#find ./ -maxdepth 1 -name "*.ass" -exec sh -c "sed 's/N.*$//g' '{}' >./cn/'{}'" ;
 

11、批量文件编码转换

PROJECT_DIR=.
BUILD_DIR=./build/java
#find $(PROJECT_DIR)/config -name '*.sql' -type f -exec sh -c "iconv -f utf8 -t gb18030 '{}' | unix2dos > $(BUILD_DIR)/'{}'" ;
 
上述用法在跨平台的mysql数据库应用中有用。

=-=-=-=-=
Powered by Blogilo

find的用法的更多相关文章

  1. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  2. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  3. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

  4. [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法

    一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...

  5. python enumerate 用法

    A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...

  6. [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...

  7. 【JavaScript】innerHTML、innerText和outerHTML的用法区别

    用法: <div id="test">   <span style="color:red">test1</span> tes ...

  8. chattr用法

    [root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...

  9. 萌新笔记——vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)

    vim有许多命令,网上搜有一堆贴子.文章列举出各种功能的命令. 对于"="."d"."y",我在无意中发现了它们所具有的相同的一些用法,先举 ...

  10. [转]thinkphp 模板显示display和assign的用法

    thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...

随机推荐

  1. 利用Apache POI 实现简单的Excel表格导出

    1.利用POI API实现简单的Excel表格导出 首先假设一个学生实体类: package com.sun.poi.domain; import java.io.Serializable; impo ...

  2. javascript执行原理

    执行环境 当执行流执行到函数时会创建一个执行环境,这个执行环境包含了函数内部 语句可以访问的所有变量和函数,当代码执行完时,销毁执行环境.所以一般情 况下,局部变量在函数执行完时会被销毁. 作用域.调 ...

  3. iOS 制作自动打包脚本 Xcode8.3.2

    本文包含以下内容: 前言 1.shell脚本的编写 2.xcodebuild命令 3.完整的可用示例 参考资料 前言 做iOS开发,打包APP是比较频繁的事情,每次都手动去配置一堆东西确实是比较乏味. ...

  4. 对象克隆(clone)实例详解

    <?php class Staff { public $name; public $age; public $salary; public function __construct($name, ...

  5. Shell脚本编写

    1.什么是Shell脚本 Shell脚本是利用 shell 的功能所写的一个程序 program,这个程序是使用纯文本文件,将一些 shell 的语法与指令(含外部指令)写在里面, 搭配正则表达式.管 ...

  6. GROUP BY语句与HAVING语句的使用

    一.GROUP BY GROUP BY语句用来与聚合函数(aggregate functions such as COUNT, SUM, AVG, MIN, or MAX.)联合使用来得到一个或多个列 ...

  7. 关于Dubbo一个接口多个实现的解决方案

    如题,其实这个问题在官方文档中已经说明了.我直接贴图就好了 更多学习请参考:minglisoft.cn/technology

  8. Ultimus BPM 零售和快消品行业应用解决方案

    Ultimus BPM 零售和快消品行业应用解决方案 行业应用需求 中国零售及快消品行业正在经历深刻变化.经济下滑,消费回落,行业危机继续发酵:人员工资.房租费用进一步上涨,成本高涨成为不能承受之重: ...

  9. 刨根究底字符编码之四——EASCII及ISO 8859字符编码方案

    EASCII及ISO 8859字符编码方案   1. 计算机出现之后,从美国发展到欧洲,由于欧洲很多国家中所用到的字符中,除了基本的美国也用的那128个ASCII字符之外,还有很多衍生的拉丁字母等字符 ...

  10. Ehcache 整合Spring 使用页面、对象缓存(1)

    转自:http://www.cnblogs.com/hoojo/archive/2012/07/12/2587556.html Ehcache在很多项目中都出现过,用法也比较简单.一般的加些配置就可以 ...