拓冰建站拓冰建站
首页 / 资讯中心 / 正文

第十七章 查找文件

第十七章 查找文件Linux系统良好的文件组织结构,源自类UNIX系统“代代传承”的惯例,但庞大的文件量会引发令人生畏的问题。系统查找文件的工具:locate:按照路径查找文件名。find:在目录中查找文件名。配合文件查找命令处理结果文件的命令:xargs:通过标准输入构建并执行命令。touch:修改文件时间。stat:显示文件或文件系统状态。简单的文件查找方法locate命令对路径名执行快速的数据库查找,然后输出与给定字符串匹配的各个名称。命令如下:locatefilename#查找包含filename的所有路径例如:查找包含zip开头的所有程序:locatebin/zip输出结果如下:/usr/bin/zip/usr/bin/zipcloak/usr/bin/zipgrep/usr/bin/zipinfo/usr/bin/zipnote/usr/bin/zipsplit如果查找文件比较复杂,可以将locate命令与grep命令等其它与grep等其他命令结合起来。例如:locatezip|grepbin输出结果如下:/bin/bunzip2/bin/bzip2/bin/bzip2recover/bint/gunzip//usr/bin/funzip/usr/bin/preunziplocate命令也有几种常用的变体。slocate命令和mlocate命令是现代Linux发行版中常见的两种,不过两者是通过符号链接locate命令访问的。不同的locate有重叠的选项。有些版本支持正则表达式和通配符。locate命令的数据库是通古updatedb创建的。它通常作为corn作业,有守护进程cron定期执行。大多数locate命令的系统每天执行一次updatedb命令。数据库并不是持续更新的,新创建的文件不会出现查找结果中。可以切换到超级用户执行updatedb命令。复杂的文件查找方法locate命令仅根据文件名查找文件,而find可以根据各种属性在指定目录(及其子目录)查找文件。find命令较简单的用法就是为其指定一个或多个目录作为查找范围。例如:要想生成文件目录列表,可以这样:[me@linuxbox ~]$find~find命令可能会生成一个很长的文件列表,统计查找文件到的文件数量:[me@linuxbox ~]$find~|wc-lfind命令通过各种选项(option)、测试条件(test)以及操作(action)来实现的。测试条件例如查找目录,可以加入下列测试条件:[me@linuxbox ~]$find~-typed|wc-l1695加入测试条件-type d,限制只查找目录。限制只查找普通文件[me@linuxbox ~]$find~-typef|wc-l38737fiind命令支持的常见
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门