linux 命令案例学习——文件搜索

简介:

两个搜索文件的工具

  • locate  ——仅仅通过文件名查找文件
  • find     ——依据文件的各种属性在既定目录(包括子目录)里查找

一个通常与文件搜索命令一起使用、处理搜索结果文件列表的命令

  • xargs

 

1 locate

1.1 查找文件名中含有zip的文件名

locate zip

看下结果太吓人了,把所有含有zip的文件都输出来了

 1.2 文件名中含有zip,并且限定下范围所在目录以bin/结尾

locate /bin/zip

结果

1.3 文件名中含有zip,并且所在目录中含有usr

locate zip | grep usr

 

2. find

2.1 test选项

2.1.1 查看目录/usr下文件列表清单的数目

find /usr | wc -l

  • |是管道命令,把|左边的输出作为|右边的输入
  • wc 是"word count"之意,单纯写wc 会统计出行数、字数、字节数;加上-l参数后只统计出行数。

2.1.2 查看目录/usr下类型为目录的文件的数量

find /usr -type d |wc -l

:find支持搜索的文件类型

     b - 块设备文件  c - 字符设备文件  d - 目录  f - 普通文件  l - 符号链接

2.1.3 查看目录/usr下类型为普通文件、名字格式为".so"、大小为1M的文件的数目

find /usr  -type f -name "*.png" -size 1M |wc -l

  • -name "*.png"表示查找的符合.png通配符格式
  • -size是文件的大小:+1M--比1M大    -1M--比1M小    1M--正好为1M

2.1.4下边再列举几条test参数(不全,详见man find)

  • -empty            匹配空文件和空目录
  • -group name    匹配目录名name
  • -user name      匹配文件名name
  • -cmin n           匹配n分钟前改变状态(内容或属性)的文件或目录
  • -mmin n          匹配n分钟前被修改的文件或目录
  • -mtime            匹配n*24小时前被修改的文件或目录
  • perm               匹配访问权限与既定模式匹配的文件或目录。既定模式可以以八进制或符号形式表示

2.2 action选项

2.2.1 查找当前目录下文件名中包含.swp的所有文件并删除

find . -type f -name "*.swp"  -delete

:预定义的find命令操作

  • -delete  删除匹配文件
  • -ls        对匹配文件进行标准化输出其文件名及所需求的其他信息
  • -print    将匹配的文件进行全路径输出(当没有其他具体操作时,默认操作)
  • -quit     一旦匹配成功便退出

 

2.2.2 查找当前目录下含有某个字符串的所有文件名

find .|xargs grep "IBM" 
find .|xargs grep"IBM" -l   #只打印出文件名 

  • xargs是一条Unix和类Unix操作系统的常用命令。它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题。

 





本文转自jihite博客园博客,原文链接:http://www.cnblogs.com/kaituorensheng/p/3796663.html,如需转载请自行联系原作者


相关文章
|
15天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
44 14
Linux 10 个“who”命令示例
|
3天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
57 20
|
4天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
26 7
|
16天前
|
人工智能 安全 Linux
|
24天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
31 9
|
22天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
7月前
|
Linux
百度搜索:蓝易云【Linux中如何对文件进行压缩和解压缩?】
这些是在Linux中进行文件压缩和解压缩的常见方法。根据您的需求和具体情况,可能会使用其他压缩工具和选项。您可以通过查阅相应命令的帮助文档来获取更多详细信息。
91 1
|
7月前
|
NoSQL Java Linux
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
|
7月前
|
算法 Java Linux
Linux下文件增删改查定位压缩操作与权限所属用户
Linux下文件增删改查定位压缩操作与权限所属用户
77 0
26Linux - 文件管理(文件压缩解压:bzip2)
26Linux - 文件管理(文件压缩解压:bzip2)
64 0
下一篇
DataWorks