"Linux中find常见用法示例"
find 命令是 Linux 系统中一个非常强大的文件搜索工具,它可以根据不同的参数和选项来查找和处理文件下面将详细介绍 find 命令的常见用法示例:
1. 基本语法:find path -option [ -print ] [ -exec -ok command ] {}
其中,path 是要搜索的目录路径,option 是搜索的选项,-print 是将查找到的文件输出到标准输出,-exec 是将查找到的文件执行指定的命令,-ok 是安全模式下的执行命令。
2. 查找文件
* find . -name filename:查找名为 filename 的文件
* find . -perm:按执行权限来查找文件
* find . -user username:按文件属主来查找文件
* find . -group groupname:按组来查找文件
* find . -mtime -n +n:按文件更改时间来查找文件,-n 指 n 天以内,+n 指 n 天以前
* find . -atime -n +n:按文件访问时间来查找文件
* find . -ctime -n +n:按文件创建时间来查找文件
* find . -nogroup:查无有效属组的文件
* find . -nouser:查无有效属主的文件
3. 查找文件的其他选项
* find . -newer f1 !f2:查找更改时间比 f1 新但比 f2 旧的文件
* find . -type b/d/c/p/l/f:查是块设备、目录、字符设备、管道、符号链接、普通文件
* find . -size n[c]:查长度为 n 块[或 n 字节]的文件
* find . -depth:使查找在进入子目录前先行查找完本目录
* find . -fstype:查位于某一类型文件系统中的文件
* find . -mount:查文件时不跨越文件系统 mount 点
* find . -follow:如果遇到符号链接文件,就跟踪链接所指的文件
* find . -cpio:对匹配的文件使用 cpio 命令,将他们备份到磁带设备中
* find . -prune:忽略某个目录
4. 实际应用示例
* find . -name *.txt -print:查找当前目录下所有以.txt 结尾的文件并显示
* find . -name [A-Z]* -print:查找当前目录下所有以大写字母开头的文件并显示
* find . -name *.txt -exec rm -rf {} ;:查找当前目录下所有以.txt 结尾的文件并删除
* find . -name *.txt -ok rm -rf {} ;:查找当前目录下所有以.txt 结尾的文件并删除,但需要用户确认