当前位置:首页 > 编程语言 > 正文内容

Linux运维基础之fd命令详解

a811625532年前 (2024-02-26)编程语言17

fd 命令是 “find directory(查找目录)”的简称,用于搜索和定位文件系统中的文件和目录。它以简单快捷著称,因此深受系统管理员和开发人员的喜爱。

与传统的 命令相比,fd 的语法更友好,搜索速度更快。它常用于查找特定文件、清理目录,甚至在自动化脚本中使用。此外,fd 命令还可以与 等其他命令搭配使用,以实现更高级的搜索功能。

如何安装 fd 命令

大多数 Linux 发行版通常不默认包含 fd,因此需要安装。安装过程会根据你使用的发行版而有所不同。以下是在一些常见发行版上安装和卸载 fd 的 *** :

Ubuntu/Debian

要在 Ubuntu 或 Debian 上安装 fd,可以使用以下命令:

sudo apt-get update
sudo apt-get install fd-find

以后要卸载它,可以使用:

sudo apt-get remove fd-find

Fedora

在 Fedora 上,您可以使用以下命令安装 fd

sudo dnf install fd-find

卸载:

sudo dnf remove fd-find

macOS (使用 Homebrew)

如果你使用的是 macOS 和 ,可以用以下命令安装 fd

brew install fd

卸载:

brew uninstall fd

注:在某些软件包管理器中,软件包名称可能是 fd-find,你可能需要使用 fdfind 命令来代替 fd 。你可以在 shell 配置文件(如 .bashrc.zshrc )中添加别名 fd=fdfind,将其别名为 fd

如何使用 fd

1. 按名称搜索文件

语法fd PATTERN

说明:搜索符合给定规则名称的文件和目录。

示例: fd 'report.txt'

输出:

/home/user/scripts/executable_script.sh
/home/user/documents/report.txt
/home/user/archive/report.txt

该命令会搜索当前目录及其子目录中出现的所有 report.txt,并列出文件的完整路径。

2. 搜索具有特定扩展名的文件

语法fd '.*EXTENSION'

说明:搜索具有特定扩展名的文件。

示例: fd '.*\.pdf'

输出:

/home/user/scripts/executable_script.sh
/home/user/documents/file1.pdf
/home/user/documents/file2.pdf

该命令可搜索当前目录及其子目录中的所有 PDF 文件。

3. 搜索最近 N 天内修改的文件

语法fd --changed-within 'Nd'

说明:搜索最近 N 天内修改过的文件和目录。

示例: fd --changed-within '7d'

输出:

/home/user/scripts/executable_script.sh
/home/user/documents/week_report.docx
/home/user/photos/recent_image.jpg

该命令会列出最近 7 天内修改过的所有文件和目录。

4. 仅搜索目录

语法fd --type d PATTERN

说明:搜索符合给定规则名称的目录。

示例: fd --type d 'projects'

输出:

/home/user/scripts/executable_script.sh
/home/user/development/projects
/home/user/design/projects

该命令会搜索当前目录及其子目录中所有名为 projects 的目录。

5. 搜索排除某些目录的文件

语法fd --exclude DIR PATTERN

说明:搜索与规则匹配的文件和目录,不包括指定的目录。

示例: fd --exclude 'archive' 'report.txt'

输出:

/home/user/scripts/executable_script.sh
/home/user/documents/report.txt

该命令搜索 report.txt ,但不包括 “archive” 目录中的任何结果。

6. 搜索大于特定大小的文件

语法fd --size '+SIZE'

说明:搜索大于指定大小的文件。

示例: fd --size '+1M'

输出:

/home/user/scripts/executable_script.sh
/home/user/videos/large_video.mp4
/home/user/music/big_album.flac

该命令列出当前目录及其子目录中所有大于 1 兆字节的文件。

7. 搜索文件并执行命令

语法fd PATTERN -x COMMAND

说明:搜索与规则匹配的文件,并对其执行指定命令。

示例: fd '.*\.txt' -x cat

输出:

/home/user/scripts/executable_script.sh
Contents of file1.txt
Contents of file2.txt

该命令搜索所有文本文件,然后运行 cat 命令,显示文件内容。

8. 以区分大小写的方式搜索文件

语法fd --ignore-case PATTERN

说明:搜索与规则匹配的文件和目录,忽略大小写。

示例: fd --ignore-case 'readme'

输出:

/home/user/scripts/executable_script.sh
/home/user/README
/home/user/projects/readme.md

该命令搜索当前目录及其子目录中所有出现的 readme,忽略大小写。

9. 使用正则表达式搜索文件

语法fd --regex 'REGEX'

说明:搜索与给定正则表达式匹配的文件和目录。

示例: fd --regex '^a.*\.txt$'

输出:

/home/user/scripts/executable_script.sh
/home/user/documents/a_file.txt
/home/user/documents/another_file.txt

该命令搜索当前目录及其子目录中所有以字母 a 开头的文本文件。

10. 搜索具有特定权限的文件

语法fd --perm PERMISSIONS

说明:搜索具有特定权限的文件。

示例: fd --perm 755

输出:

/home/user/scripts/executable_script.sh

该命令搜索权限设置为 755 的文件(所有者的权限为读取、写入和执行;组和其他人的权限为读取和执行)。

更多 Linux 命令

下面罗列了最常见的一些 Linux 命令,您可以根据自己的需要查阅对应命令的详细解析:

目录操作  ·  ·  ·  · 
文件操作  ·  ·  ·  ·  ·  ·  ·  · 
文件系统操作  ·  · 
***  ·  ·  ·  · 
搜索和文本处理  ·  ·  ·  ·  ·  · 
系统信息和管理  ·  ·  ·  ·  ·  · 
用户和会话管理  ·  ·  · 

此外,我们还整理 ,以帮助大家全面深入地学习 Linux。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://2345hao.cn/blog/index.php/post/8229.html

分享给朋友:

“Linux运维基础之fd命令详解” 的相关文章

PHP 8.1有哪些变化:新特性、改变及弃用等

PHP 8.1有哪些变化:新特性、改变及弃用等

不久前,PHP 8.0大张旗鼓地发布了。它带来了许多新特性、性能增强和变化——其中最令人兴奋的是新的JIT编译器。 技术世界总是在向前发展,PHP也是如此。 ,包含了几个令人兴奋的特性。它定于今年晚些时候于2021年11月25日发布。 在本文中,我们将详细介绍PHP 8.1将带来哪些新的东...

什么是JavaScript?网络上最流行的脚本语言一瞥

什么是JavaScript?网络上最流行的脚本语言一瞥

谁在尝试访问某些网站时没有遇到过更新Java的请求? 虽然许多人通过交互式网站功能熟悉Java,但用户可能不太熟悉JavaScript——或者,实际上,他们可能错误地认为两者是相同的。 在本文中,我们将讨论JavaScript 是什么以及Java和JavaScript之间的区别。然后我们将概...

宝塔面板教程之文件管理篇

宝塔面板教程之文件管理篇

宝塔面板其中一个最为便捷的功能之一,无需SFTP或者FTP即可对服务器的文件内容进行上传、下载、编辑及删除等管理操作。 文件管理,用于管理该服务器上的文件内容。 文件的基础操作 文件的基础操作有哪些了,主要有这些方面:复制、粘贴、剪切、删除、重命名、压缩、刷新、新建文件、新建目录。...

宝塔面板教程之面板设置篇

宝塔面板教程之面板设置篇

宝塔面板设置主要涉及的是宝塔控制后台自身的参数,包括诸如面板的开关、自动更新及SSL、面板端口设置等。虽然这部分不涉及服务器自身的管理,但对宝塔面板的设置也有其重要。 特别是面板端口、安全入口及面板密码等涉及安全的参数设置。 启动和关闭面板 如果你长时间无需使用到宝塔面板,可以考虑...

MongoDB vs MySQL:哪个是更好的数据库管理系统?

MongoDB vs MySQL:哪个是更好的数据库管理系统?

由于市场上有各种可用的数据库,用户经常会就MongoDB与MySQL进行辩论,以找出更好的选择。 使用MySQL等关系数据库的组织在根据不断变化的需求管理和存储数据时可能会面临一定的困难。同时,新公司想知道选择什么数据库,这样他们就不会在开发过程中遇到问题。 同时,构建金融应用程序的开发人员...

Serverless PHP简介:主要功能、用例以及如何在Lambda上开始使用Bref

Serverless PHP简介:主要功能、用例以及如何在Lambda上开始使用Bref

无服务器计算是一种基于云的执行模型,可以将应用程序作为服务托管,而无需维护服务器。 服务提供商维护服务器上的资源分配,并根据实际使用情况向用户收费。焦点转移到一个人正在创建的核心应用程序上,基础设施完全由服务提供商处理。无服务器计算也称为功能即服务 (FaaS)。 换句话说,Serverle...