<p>如何利用find命令查找文件? Linux面试题<br /> find命令会在指定目录及其子目录下查找符合条件的特定文件。此命令的最大用处是当忘了文件的正确所在,而想找到该文件。<br /> <br /> 命令格式<br /> <br /> find 目录名 条件 <br /> <br /> 目录名 ? 欲开始寻找的目录所在。find会寻找此目录及其子目录。可以有多个目录名称,只要目录与目录之间用空格分开即可。<br /> <br /> 条件 ? 欲搜索文件的条件,可包含文件名称、属主、最后修改时间等等。<br /> <br /> 条件列表说明<br /> <br /> -name name 指定要被寻找的文件或目录名称,<br /> <br /> 可用通配符,如, -name &lsquo;*.c&rsquo;<br /> <br /> -print 将符合条件的路径打印出来 <br /> -size n 寻找占用n个block的文件 <br /> -type x 以文件类型作为寻找条件。文件类型x如下:<br /> <br /> d ? 目录(directory), f ? 文件(file),<br /> <br /> b ? 块(block), c ? 字符(character),<br /> <br /> p ? 管道(pipe)<br /> <br /> -user user 寻找属于user所拥有的文件,<br /> <br /> user可为用户名或uid号<br /> <br /> -group group 寻找用户组为group的所有文件,<br /> <br /> group可为组名称或gid号<br /> <br /> -links n 寻找链接数等于n的所有文件 <br /> -atim n 寻找n天之前曾被存取的文件 <br /> -mtime n 寻找n天之前曾被修改的文件 <br /> -exec command {}; 用寻找到的文件作为执行command的对象,<br /> <br /> {}内存欲执行command时所需的参数<br /> <br /> <br /> 条件的逻辑运算符:<br /> <br /> 逻辑运算符 逻辑意义 举例 说明 <br /> ! 非 !-name &ldquo;*.c&rdquo; 所有不以.c为扩展名的文件 <br /> -o 或 -size +10 -o -links 3 所有大于10block或链接数为3的文件 <br /> 与 -size +10 -links 3 大于10block且链接数为3的文件 <br /> <br /> 注:上表中的&ldquo;+10&rdquo;表示大于10,&ldquo;-10&rdquo;表示小于10。<br /> <br /> 基本用法举例<br /> <br /> find /temp -name &ldquo;abc*&rdquo; -print 在/temp目录下查找文件名以abc开始的文件 <br /> find . -name test -print 在当前目录下查找文件名为test的文件 <br /> </p>
返回顶部 留言