前言:最近几天使用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 {} \; 3 删除20天以前的文件 find / -name "*" -ctime +20 -exec rm -f {} \; (不要执行哦,要看清楚哈) 注:+20 表示20天以前 |
linux find命令-exec参数的使用说明(笔记)
最新推荐文章于 2023-01-15 16:37:14 发布
2009-04-18 12:07
|