find命令
find命令主要是沿着文件层次结构下下遍历
find [选项] [搜索路径] [表达式]
默认路径当前目录,默认表达式是-print
参数 描述
-print find 命令将匹配的文件输出到标准输出
-exec find 命令对匹配的文件执行该参数所给出的 shell 命令
-name 按照文件名查找文件
-type 查找某一类型的文件
-prune 使用这一选项可以使 find 命令不在当前指定的目录中查找,如果同时使用 -depth 选项,那么 -prune 将被 find 命令忽略
-user 按照文件属主来查找文件
-group 按照文件所属的组来查找文件
-mtime -n +n 按照文件的更改时间来查找文件,-n 表示文件更改时间距现在小于 n 天,+n 表示文件更改时间距现在大于 n 天,find 命令还有 -atime 和 -ctime 选项
打印当前目录下的文件目录列表,可以使用如下命令
$ find . -print
打印当前目录下所有以.txt 结尾的文件名,
$ find . -name "*.txt" -print
打印当前目录下所有以.txt 或.pdf 结尾的文件名
$ find . \(-name "*.pdf" -or -name "*.txt" \)
打印当前目录下所有不以.txt 结尾的文件名,
& find . ! -name "*.txt"%
find海南根据文件类型、权限、所有者及操作符来查找匹配文件
根据文件类型来查找文件类型,-type选项
文件类型 描述符
b 块设备文件
c 字符设备文件
d 目录
f 普通文件
l 符号链接
根据文件权限查找文件,-perm选项,所有者是-user选项。除此之外还能通过逻辑操作符来创建更复杂的逻辑关系:-and、-or、-not、()
打印当前目录下所有以.txt结尾的符号链接
$ find . -type l -name "*.txt" -print
打印当前目录所有权限777的c文件
$ find . -type f -name "*.c" -perm 777