zoukankan      html  css  js  c++  java
  • 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操作系统的常用命令。它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题。

     

  • 相关阅读:
    hdu 1280 排序水题
    hdu 3336 KMP+DP (仍不懂)
    懂点PS技巧,你会减少很多痛苦
    ajax返回值中有回车换行、空格的解决方法分享
    windows7系统下让所有文件夹都使用同一种视图的方法
    LINUX常用命令大全归纳篇
    js 运算符
    获取修改父页面元素
    while跟do...while的用法
    jQuery取得select选择的文本与值
  • 原文地址:https://www.cnblogs.com/kaituorensheng/p/3796663.html
Copyright © 2011-2022 走看看