find命令的使用 口find:搜索文件,并执行指定的操作。 find [起始目录]寻找条件 操作们 ◆常用选项:以名称和文件属性查找 -name 字符串 查找文件名匹配所给字符串的所有文件, 字符串内可用通配符*、?、【] -lname字符串查找文件名匹配所给字符串的所有符号链接文件, 字符串内可用通配符*、?、[] -gid n 查找属于ID号为n的用户组的所有文件。 -uid n 查找属于ID号为n的用户的所有文件。 -group 字符串查找属于用户组名为所给字符串的所有的文件。 -user字符串查找属于用户名为所给字符串的所有的文件
1 find [起始目录] 寻找条件 [操作] 常用选项:以名称和文件属性查找 -name 字符串 查找文件名匹配所给字符串的所有文件, 字符串内可用通配符 *、?、[ ] -lname 字符串 查找文件名匹配所给字符串的所有符号链接文件, 字符串内可用通配符 *、?、[ ] -gid n 查找属于ID号为 n 的用户组的所有文件。 -uid n 查找属于ID号为 n 的用户的所有文件。 -group 字符串 查找属于用户组名为所给字符串的所有的文件。 -user 字符串 查找属于用户名为所给字符串的所有的文件。 find命令的使用 find: 搜索文件,并执行指定的操作
以名称和文件属性查找 empty 查找大小为0的目录或文件 -size n[bckw]查找指定文件大小的文件,n后面的字符表示 单位,缺省为b,代表512字节的块 -type x查找类型为x的文件,x为下列字符之一: b块设备文件;c字符设备文件;d目录文件; p命名管道,E普通文件,1符号链接;s socket文件 注:以上选项中的n可以有三种输入方式:n,+n,-n ● 20表示等于20 ●+20表示大于20(21,22,23等) ●-20表示小于20(19,18,17等)
2 -empty 查找大小为 0 的目录或文件 -size n[bckw] 查找指定文件大小的文件,n 后面的字符表示 单位,缺省为 b,代表 512 字节的块 -type x 查找类型为 x 的文件,x 为下列字符之一: b 块设备文件; c 字符设备文件; d 目录文件; p 命名管道; f 普通文件; l 符号链接; s socket 文件 以名称和文件属性查找 注:以上选项中的 n 可以有三种输入方式:n,+n,-n z 20 表示等于 20 z +20 表示大于 20 (21,22,23 等) z -20 表示小于 20 (19,18,17 等)
以时间为条件查找 常用选项:以时间为条件查找 -amin n查找n分钟前被访问过的文件或目录 -atime n查找n天前被访问过的文件或目录 -anewer<参考文件或目录>查找其访问时间比指定文件或目录的 访问时间更接近现在的文件或目录 -cmin n查找n分钟前文件状态被修改过的文件或目录 -ctime n 查找n天前文件状态被修过如女L土口三 -cnewer〈参考文件或目录>查找其] 选项中可以使用 或目录的文件状态修改 n,tn,-n -mmin n 查找分钟前文件内容被修改卫的义件或目求 -mtime n 查找天前文件内容被修改过的文件或目录 -newer 〈参考文件或目录〉查找其更改时间较指定文件或目录的 更改时间更接近现在的文件或目录
3 -amin n 查找 n 分钟前被访问过的文件或目录 -atime n 查找 n 天前被访问过的文件或目录 -anewer <参考文件或目录> 查找其访问时间比指定文件或目录的 访问时间更接近现在的文件或目录 -cmin n 查找 n 分钟前文件状态被修改过的文件或目录 -ctime n 查找 n 天前文件状态被修改过的文件或目录 -cnewer <参考文件或目录> 查找其文件状态修改时间比指定文件 或目录的文件状态修改时间更接近现在的文件或目录 -mmin n 查找 n 分钟前文件内容被修改过的文件或目录 -mtime n 查找 n 天前文件内容被修改过的文件或目录 -newer <参考文件或目录> 查找其更改时间较指定文件或目录的 更改时间更接近现在的文件或目录 以时间为条件查找 常用选项:以时间为条件查找 选项中可以使用 n,+n,-n
可以执行的操作 ◆ 可以执行的操作 -exec 命令名称{}对符合条件的文件执行所给的Linux命令, (}表示所找到的文件,作为命令的参数: 命令的末尾必须以八;结束 -ok 命令名称{】对符合条件的文件执行所给的Linux命令, 与exec的区别:它会询问用户是否要执行该命令 -1s详细列出所找到的所有文件 -fprint文件名将找到的文件名写入指定文件 -print 在标准输出设备上显示查找出的文件名 -printf 格式按照指定的输出,格式的具体写法请参考C语言
4 -exec 命令名称 {} 对符合条件的文件执行所给的 Linux 命令, {} 表示所找到的文件,作为命令的参数; 命令的末尾必须以 \; 结束 -ok 命令名称 {} 对符合条件的文件执行所给的 Linux 命令, 与 exec 的区别: 它会询问用户是否要执行该命令 -ls 详细列出所找到的所有文件 -fprint 文件名 将找到的文件名写入指定文件 -print 在标准输出设备上显示查找出的文件名 -printf 格式 按照指定的输出,格式的具体写法请参考 C 语言 可以执行的操作 可以执行的操作
find简单用法举例 find的简单用法举例 find -name 'mem* ●查找当前目录(含所有子目录)中以mem开头的所有文件 和目录 ●使用通配符时需要加单引号或双引号 find.-name '[Mm]em* find.-name [Mm]*[0-9] find log -empty ●查找0g子目录中所有的空文件或空目录 5
5 z 查找当前目录 (含所有子目录)中以 mem 开头的所有文件 和目录 find 简单用法举例 find . –name 'mem*' find 的简单用法举例 z 使用通配符时需要加单引号或双引号 find . –name '[Mm]em*' find log –empty z 查找 log 子目录中所有的空文件或空目录 find . –name '[Mm]*[0-9]