搜索文件或者文件夹,是一个常见的需求。我们可以用多种命令来实现我们的需求。

find 命令实现搜索

find 是英文,寻找的意思。这个命令可以很方面的来搜索我们需要的内容。

标准命令如下:

find ./ -iname "*.txt"
  • 1

命令 搜索的目录 参数 关键词

-iname 是不区分大小写。如果要区分大小写的话 -name 即可。一般情况下,我们搜索内容都是不区分大小写的。

关键词可以用 * 号进行通配。事实上,也支持正则表达式。不过我估计你可能不熟悉正则表达式,所以不强求了。

这是标准用法。但是我下面再推荐一个我喜欢的组合命令的用法

find + grep 搜索

默认的 find 命令,功能及其强大,并且最基础的也需要知道一个 * 这样的通配符。但是通过这个组合命令,可以让你啥都不懂的进行任意的搜索。

我们知道 find ./ 命令,可以把当前文件夹下的所有内容全部列出来。同时 grep 命令可以根据关键词进行过滤。然后我们就可以组合这个命令了。

find ./ | grep txt
  • 1

这个命令就可以将当前目录里面的所有文件名中包含 txt 的全部列出来。

另外,我们还可以组合多个关键词进行进一步的过滤,只要在后面接着输入 | grep 关键词即可。

最重要的是,还可以取反,就是 grep 加上 -v 这个参数。

举例如下:

find ./ | grep txt | grep Site
find ./ | grep txt | grep Site | grep -v linux
  • 1
  • 2

看,重要我们就可以不用管什么正则,什么通配符,用我们简单的组合命令,就可以进行我们想要的任意搜索了。

| 是管道的意思。作用是把前面的命令的结果传给后面的命令继续去执行。这是命令行中非常重要并且非常好用的概念。我们可以用这些来进行很多的组合操作。

对了,写完了才想起来,我们用不着用 find ./ 作为第一个命令,还可以用 find . 作为命令。效果是一样的。嘿嘿。

本文由 FungLeo 原创,允许转载,但转载必须保留首发链接。

linux\mac 日常入门命令行使用——搜索文件\文件夹的更多相关文章

  1. LINUX系统日常使用命令

    一.开关机命令1.shutdown -h now   关闭系统2.init 0   关闭系统3.telinit 0  关闭系统4.shutdown -h hours:minutes      按预定时 ...

  2. 【Linux工具】svn命令行使用实例

    引言 网上有这么多介绍 svn 使用的文章,为什么还要写?因为它们深入不浅出,平铺不分类,理论不实际,看完也记不住. 本文先介绍基本用法,后进行实例演练.不求大而全,只求熟练常用,自行用 svn he ...

  3. for /r命令实现全盘搜索指定文件

    @echo off Rem :全盘搜索指定文件并输出到文本 set "fileName=Normal.dotm" set "outPutPath=C:\result.tx ...

  4. Linux/Mac/Shell常用命令

    常用命令 · ls 查看当前目录下的文件 · cd 进入某目录 · cd - 跳转回前一目录 · cd ~ 进入当前用户个人目录 · pwd 输出当前所在路径 · mkdir 新建文件夹 · touc ...

  5. 都能看懂的嵌入式linux/android alsa_aplay alsa_amixer命令行使用方法

    前几天在嵌入式linux上用到alsa command,网上查的资料多不给力,仅仅有动手一点点查,最终能够用了,将这个用法告诉大家,以免大家少走弯路. 0.先查看系统支持哪几个alsa cmd: ll ...

  6. linux下使用find命令根据系统时间查找文件用法

    这篇文章主要为大家介绍了find 命令有几个用于根据您系统的时间戳搜索文件的选项. 这些时间戳包括 mtime 文件内容上次修改时间 atime 文件被读取或访问的时间ctime 文件状态变化时间 m ...

  7. Linux 和Windows之间命令行实现目录或文件互传

    在linux中,我们常用scp命令传输文件: 如以下实例,我们想把当前服务器文件abc.sql传输到192.168.1.1服务器上 我们可以执行以下命令: scp /home/person/hww/a ...

  8. C#远程执行Linux系统中Shell命令和SFTP上传文件

    一.工具:SSH.Net 网址:https://github.com/sshnet/SSH.NET 二.调用命令代码: Renci.SshNet.SshClient ssh = "); ss ...

  9. Linux基础教程 linux下使用find命令根据系统时间查找文件用法

      LinuxFind 兄弟连Linux培训 总结这些时间戳包括 复制代码代码如下: mtime 文件内容上次修改时间 atime 文件被读取或访问的时间 ctime 文件状态变化时间 mtime 和 ...

随机推荐

  1. iredmail安装问题

    =================================== 已解决::::(据铭哥说 只有最新版0.9.2才会出现这个问题) 解决办法::(都是IPv6惹的祸) vi /etc/dovec ...

  2. 关于ThinkPHP的一些编程技巧

    在TP学习过程中难免会遇到一些大大小小的问题,把这些问题积累下来就可以在以后遇到时能很快速的解决,提高编程效率. 1.让Runtime下的文件格式化:入口文件处:define(‘STRIP_RUNTI ...

  3. tomcat重启后session没有清除的解决办法

    tomcat的默认设置是:用户保存的session信息会持久到到硬盘中,即使重启tomcat,这些session信息也不会丢失. 如果希望重启tomcat,清除所有session信息,可以修改tomc ...

  4. 微信小程序 - 授权页面

    小程序授权方式更改以后,我们只有两种选择. 1.在主页使用遮罩层,类似这样的(会造成一点卡顿) 2.新增登陆授权页(经过反复的思考,我还是觉得用这个好) 这个也不错: https://blog.csd ...

  5. Linux下GoAccess的安装与全部用法

      GoAccess用户文档 一. GoAccess概述 1.1 GoAccess概述 goaccess是一个实时的web日志分析器,以及交互式查看器,在类Unix系统的终端(terminal)上运行 ...

  6. JSON语言规范与Java中两种解析工具基本使用

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6652250.html  一:JSON语言规范 一言以蔽之:“一个 :一个键值对,一个{}一个对象,一个[]一个 ...

  7. simplify-path-字符串处理,去除多余路径

    题目描述 Given an absolute path for a file (Unix-style), simplify it. For example,path ="/home/&quo ...

  8. .NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Ruby/Shell/Agile/CSS/HTML/HTTP/Unix/Linux大量PDF书籍/电子书籍下载, Effective Java 下载

    223本电子书籍,囊括了.NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Shell/A ...

  9. java 生成jar包并保留注释

      java 生成jar包并保留注释 CreationTime--2018年7月17日08点32分 Author:Marydon 1.选中java项目-->右键-->Export: 2.去 ...

  10. javascript库之Mustache库使用说明

    一.简单示例 代码: function show(t) { $("#content").html(t); } var view = { title: 'YZF', cacl: fu ...