查看文章 |
关键词: Linux find -exec 前言:最近几天使用find的高级功能,但执行到 -exec命令的时候总是提示错误 信息如下:“find: missing argument to `-ok' ”,花了点时间,研究了下帮助(man),终于是搞清楚了。 说明:find命令,配合-exec参数,可以对查询的文件进行进一步的操作,可以得到很多有用的功能,比如说文件包含特定字符串的查询等,要了解这个功能,最简单直接的就是看find命令帮助,列出 -exec command ; 其实只要读懂这段话就理解了 废话少说,这里简单说明一下 -exec 参数后面跟的是 command命令,注意点如下: command命令的终止,使用 ';' (分号)来判定,在后面必须有一个 ';' '{}',使用{}来表示文件名,也就是find前面处理过程中过滤出来的文件,用于command命令进行处理 特别强调,对于不同的系统,直接使用分号可能会有不同的意义, 使用转义符 '\'在分号前明确说明,对于前面我们遇到的问题,主要就是这个原因引起的! 举例: 1.查询所有保护字符串“Hello”的文件 find / -exec grep "Hello" {} \; 2.删除所有临时文件 find / -name "*.tmp" -exec rm -f {} \; 。。。。。。。。
|