fd 命令提供了一种简单直白的搜索 Linux 文件系统的方式。

fd 是一个超快的,基于 Rust 的 Unix/Linux find 命令的替代品。它不提供所有 find 的强大功能。但是,它确实提供了足够的功能来覆盖你可能遇到的 80% 的情况。诸如良好的规划和方便的语法、彩色输出、智能大小写、正则表达式以及并行命令执行等特性使 fd 成为一个非常有能力的后继者。

安装

进入 fd GitHub 页面,查看安装部分。它涵盖了如何在macOS、 Debian/Ubuntu Red Hat 和 Arch Linux 上安装程序。安装完成后,你可以通过运行帮助来获得所有可用命令行选项的完整概述,通过 fd -h 获取简明帮助,或者通过 fd --help 获取更详细的帮助。

简单搜索

fd 旨在帮助你轻松找到文件系统中的文件和文件夹。你可以用 fd 带上一个参数执行最简单的搜索,该参数就是你要搜索的任何东西。例如,假设你想要找一个 Markdown 文档,其中包含单词 services 作为文件名的一部分:

$ fd services

downloads/services.md

如果仅带一个参数调用,那么 fd 递归地搜索当前目录以查找与莫的参数匹配的任何文件和/或目录。使用内置的 find 命令的等效搜索如下所示:

$ find . -name 'services'

downloads/services.md

如你所见,fd 要简单得多,并需要更少的输入。在我心中用更少的输入做更多的事情总是对的。

文件和文件夹

您可以使用 -t 参数将搜索范围限制为文件或目录,后面跟着代表你要搜索的内容的字母。例如,要查找当前目录中文件名中包含 services 的所有文件,可以使用:

$ fd -tf services

downloads/services.md

以及,找到当前目录中文件名中包含 services 的所有目录:

$ fd -td services

applications/services

library/services

如何在当前文件夹中列出所有带 .md 扩展名的文档?

$ fd .md

administration/administration.md

development/elixir/elixir_install.md

readme.md

sidebar.md

linux.md

从输出中可以看到,fd 不仅可以找到并列出当前文件夹中的文件,还可以在子文件夹中找到文件。很简单。

你甚至可以使用 -H 参数来搜索隐藏文件:

fd -H sessions .

.bash_sessions

指定目录

如果你想搜索一个特定的目录,这个目录的名字可以作为第二个参数传给 fd:

$ fd passwd /etc

/etc/default/passwd

/etc/pam.d/passwd

/etc/passwd

在这个例子中,我们告诉 fd 我们要在 etc 目录中搜索 passwd 这个单词的所有实例。

全局搜索

如果你知道文件名的一部分,但不知道文件夹怎么办?假设你下载了一本关于 Linux 网络管理的书,但你不知道它的保存位置。没有问题:

fd Administration /

/Users/pmullins/Documents/Books/Linux/Mastering Linux Network Administration.epub

总结

fd 是 find 命令的极好的替代品,我相信你会和我一样发现它很有用。要了解该命令的更多信息,只需浏览手册页。

本文由 LCTT 原创编译,Linux中国 荣誉推出

linux终端友好,Linux 中一种友好的 find 替代工具相关推荐

  1. linux文件查找工具,分享|Linux 中一种友好的 find 替代工具

    fd 命令提供了一种简单直白的搜索 Linux 文件系统的方式. fd 是一个超快的,基于 Rust 的 Unix/Linux find 命令的替代品.它不提供所有 find 的强大功能.但是,它确实 ...

  2. 神奇 | 神奇,原来 Linux 终端下还有这两种下载文件方式

    " Hi ! 我是小小,今天开始本周的第二篇,本周第二篇,将会着重讲解关于Linux下的两种文件下载方式. 前言 如果你一直使用 Linux 终端,比如在服务器上,如何从终端下载文件,在本篇 ...

  3. 从Linux终端下载文件的2种方法

    如果您坚持使用Linux终端,例如在服务器上,如何从终端下载文件? Linux中没有下载命令,但是有几个用于下载文件的Linux命令. 在这个终端技巧中,您将学习在Linux中使用命令行下载文件的两种 ...

  4. linux 终端 screem,Linux screen实操指南

    今天为大家从实践角度介绍下如何在linux终端使用screen,相信我,用好screen,可以让你的工作事半功倍. 01screen是什么 Screen是一个全屏窗口管理器,它可以在多个进程之间多路复 ...

  5. linux终端教程,Linux终端命令

    01. 终端命令格式 command [-options] [parameter] 说明: command:命令名,相应功能的英文单词或单词的缩写 [-options]:选项,可用来对命令进行控制,也 ...

  6. 12 个有趣的 Linux 终端命令 | Linux 中国

    Linux 终端是用来完成复杂的工作的,我们有很多有用的 linux 命令奇技淫巧来帮助你. 但是,你知道你还可以用终端来做很多有趣的事吗?如果你不知道,没关系,大多数 Linux 用户也都只把终端视 ...

  7. linux终端上网,ubuntu中上网-如何使用ubuntu下用命令行上网?ubuntu下用命令行上网, 爱问知识人...

    2013-08-01 09:07:16 用于基本接口与IP配置的ifconfig ifconfig工具(interface configurator,接口配置器)提供了一些非常基本但是非常重要的功能. ...

  8. linux 终端 qmake,qt中的qmake命令设置

    之前安装QT-4.7.2,由于习惯了在命令行下编译源文件,我在网上搜了一下关于QT环境变量的配置方法,配置很简单,在/etc/profile文件里添加下面几行语句: export QTDIR=/opt ...

  9. linux终端crypt,Linux中grub-crypt命令起什么作用呢?

    摘要: 下文讲述Linux中grub-crypt的功能说明,如下所示: grub-crypt命令功能: 用于对password进行加密操作 此命令支持 md5 sha-256 sha-512三种加密方 ...

最新文章

  1. QT 烦人的parent该如何理解
  2. vml的简易画板_2
  3. 前端学习(2765):如何传递事件和参数
  4. Enterprise Library: Logging and Instrumentation Application Block概述
  5. Google发布Puppeteer 1.0
  6. IMGUI 系统 - Dear ImGUI
  7. Axure RP 9免费下载
  8. 微信网页授权关于state
  9. JS 应用篇(一):Underfined与Null的区别
  10. 转 Theorem、Proposition、Lemma和Corollary等的解释与区别
  11. 核函数(Kernels)
  12. 电脑时常断网和掉线的解决方法
  13. 【观察】助力5G云边协同应用落地,烽火通信的突破与创新
  14. swagger2配置
  15. 设置IDEA注释符不在行首显示
  16. Centos7英文操作环境下的中文输入
  17. 【2021-09-15】封装、继承、多态(作业)
  18. Java实现 蓝桥杯VIP 算法训练 猴子分苹果
  19. 小孩孩子应用题计算机错误,孩子做数学应用题的能力很差,该怎么办?
  20. 关于将oracle11卸载干净及安装与配置

热门文章

  1. 路飞学城Python-Day171
  2. 解决a different object with the same identifier value was already associated with the session错误...
  3. T-SQL删除存储过程
  4. (数据科学学习手札45)Scala基础知识
  5. hessian学习笔记
  6. hihocoder1457
  7. springboot入门_模板
  8. 基于OpenGL编写一个简易的2D渲染框架-07 鼠标事件和键盘事件
  9. 《C++ Primer 4th》读书笔记 第7章-函数
  10. 如何对抗硬件断点--- 调试寄存器