在 Linux 中查找文件和目录是任何系统管理员的基本技能。fd 命令是一个命令行工具,用于在 Linux 中查找文件和目录。它是 find 命令的一种简单快速的替代方法。与 find 命令相比,fd 命令语法更直观,输出彩色,搜索速度更快。它还支持使用正则表达式,默认可以忽略隐藏的文件和目录。
在这篇文章中,您将学习如何在 Linux 中使用 fd 命令查找文件。
运行 Linux 的服务器
在您的服务器上配置的 root 密码
默认情况下,fd 命令包含在所有主要操作系统的默认存储库中。
对于 Debian 和 Ubuntu 操作系统,使用以下命令安装 fd 命令:
复制
linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install fd-find -y
1.
对于 RHEL、Rocky Linux 和 Fedora 操作系统,使用以下命令安装 fd 命令:
复制
linuxmi@linuxmi:~/www.linuxmi.com$ sudodnf install fd-find -y
1.
Arch Linux 下安装 fd 命令:
复制
[root@linuxmi www.linuxmi.com]# pacman -S fd
1.
安装 fd 命令后,可以使用以下命令查看 fd 命令的版本:
复制
linuxmi@linuxmi:~/www.linuxmi.com$ fdfind --version
1.
或者
复制
[linuxmi@linuxmi www.linuxmi.com]$ fd --version
1.
您将获得以下输出:
复制
fd 8.3.1
1.
Arch Linux 的版本新一点,输出:
复制
fd 8.3.2
1.
fd 命令的基本语法如下所示:
复制
fd [选项] [模式] [路径]
1.
每个选项的简要说明如下所示:
-H - 在搜索结果中包含隐藏文件和目录。
-I - 显示将被 .gitignore、.ignore 或 .fdignore 文件忽略的搜索结果。
-s – 执行区分大小写的搜索。
-i - 执行不区分大小写的搜索。
-a - 显示绝对路径而不是相对路径。
-L - 遵循符号链接。
-j - 用于定义用于搜索的线程数。
使用不带任何选项的 fd 命令将搜索当前工作目录中的所有文件和目录:
复制
[linuxmi@linuxmi www.linuxmi.com]$ fd
1.
您将获得以下输出:
默认情况下,fd 命令不会在输出中显示隐藏文件。您可以使用 -H 选项列出所有文件,包括隐藏文件。
复制
[linuxmi@linuxmi www.linuxmi.com]$ fd -H
1.
输出:
使用 -p 选项搜索指定目录中的所有文件:
复制
[linuxmi@linuxmi ~]$ fd -p Desktop
1.
输出:
复制
[linuxmi@linuxmi ~]$ fd -p Desktop Desktop Desktop/linuxmi Desktop/linuxmi.com Desktop/www.linuxmi.com Desktop/www.linuxmi.com/www.linuxmi.com.jpg
1.
2.
3.
4.
5.
6.
您可以使用 -F 选项来查找与包含正则表达式的字符串匹配的文件。
复制
[linuxmi@linuxmi ~]$ fd -F linuxmi
1.
输出:
您可以使用 -s 选项启用区分大小写并在结果中仅显示区分大小写的文件。
复制
[linuxmi@linuxmi ~]$ fd -s Linux
1.
输出:
您可以使用-t选项按文件类型查找文件。
例如,要查找当前工作目录中的所有目录和子目录,请运行以下命令:
复制
[linuxmi@linuxmi ~]$ fd -td
1.
输出:
要仅查找常规文件,请使用带有 f 指示符的 -t 选项:
复制
fd -tf
1.
输出:
要仅查找可执行文件,请使用带有 x 指示符的-t选项:
复制
[linuxmi@linuxmi run]$ fd -tx
1.
要仅查找空文件和目录,请使用带有e指示符的 -t 选项:
复制
[linuxmi@linuxmi run]$ fd -te
1.
您可以使用-e选项按扩展名查找文件。
要查找所有 .png 文件,请运行以下命令:
复制
[linuxmi@linuxmi ~]$ fd -e png
1.
输出:
复制
[linuxmi@linuxmi ~]$ fd -e png -e txt
1.
您可以使用-p选项从指定位置查找文件。
复制
[linuxmi@linuxmi ~]$ fd linuxmi.txt -p /usr
1.
输出:
您可以使用 -S 选项按文件大小查找文件。
例如,要查找大小为 50 kb 或更大的所有文件,请运行以下命令:
复制
[linuxmi@linuxmi ~]$ fd -S +50k
1.
如果要查找大小为 50kb 或更小的所有文件,请运行以下命令:
复制
[linuxmi@linuxmi ~]$ fd -S -50k
1.
在这篇文章中,我们通过不同的示例解释了 fd 命令,以向您展示如何使用自定义参数查找文件。