在 Linux 中使用通配符进行文件名匹配:完整指南

在 Linux 中使用通配符进行文件名匹配:完整指南

浏览 Linux 文件系统最初可能令人望而生畏,但掌握通配符是高效文件管理的关键。通配符是一种功能强大的符号,可让您无缝选择多个文件或目录,无需手动输入每个文件或目录。本综合指南将深入探讨如何在 Linux 中利用通配符有效地进行文件名匹配。

1.星号 (*) 通配符

星号 (*) 通配符可匹配文件或目录名称中的任意字符序列。它是一种多功能工具,可用于各种命令,例如cpmvrm批处理。掌握此通配符可让您同时对多个文件执行操作。

通过扩展名查找文件

要列出所有带有.txt 扩展名的文件,请执行以下命令:

ls *.txt

Linux 命令通配符按扩展名匹配文件

通过前缀查找文件

如果您要查找以特定术语开头的文件(例如“example”),请使用:

ls example*

Linux 命令通配符 通过前缀匹配文件

通过使用后缀来查找文件

对于以某种模式结尾的文件(例如“_1”),使用:

ls *_1

Linux 命令通配符 通过后缀匹配文件

查找包含特定单词的文件名

要查找包含子字符串(例如“ample”)的文件名,请输入:

ls *ample*

使用 Substring 匹配 Linux 命令通配符

列出隐藏文件

Linux 中的隐藏文件以点 (.) 开头。使用以下命令可显示所有隐藏文件:

ls.*

Linux 命令通配符匹配隐藏文件

2.问号(?)通配符

问号 (?) 通配符可匹配文件名中的单个字符。此功能对于查找名称相似但仅相差一个字符的文件特别有用,例如file?.txt,它可匹配“file1.txt”和“fileA.txt”这样的文件名。

查找具有单个字符变量的文件

要匹配特定位置可以是任意字符的文件名,请使用:

ls file?.txt

Linux 命令通配符匹配文件特定字符

查找具有固定字符数的文件

如果要指定一定数量的字符,可以这样做:

ls example??.txt

匹配固定字符

将? 与 * 通配符结合使用

对于复杂搜索,请将 ? 通配符与 * 通配符组合使用。例如:

?ile*

Linux 命令通配符 组合多个通配符

3.括号表达式([ ])通配符

括号表达式允许您指定一组要匹配的字符。例如:

ls [1ab]file.txt

括号扩展

4.否定(!)通配符

要排除一组字符,请使用否定通配符。例如:

ls file[!a-zA-Z]

Linux 命令通配符 否定一组字符

5.大括号({ })通配符

括号允许你创建多个逗号分隔的模式。调用

ls file{1, 2, 3}.txt

Linux 命令通配符 括号用于指定多个模式

6.通配符与 Linux 命令的集成

通配符可以增强各种 Linux 命令(例如 find、ls、cp 和 rm),使文件管理摆脱严格的命名约定。例如,以下命令:

find Documents -name "*.txt"

Linux 命令中的通配符

7.通配符区分大小写

Linux 中的通配符区分大小写,这可能会对命令结果产生很大影响。要同时考虑大写和小写字母,请考虑使用字符类。例如:

ls [fF]ile.txt

区分大小写的文件名

总之,通过利用这些通配符技术,您可以简化 Linux 中的工作流程,使搜索文件和组织目录等任务变得更简单、更快捷。从 * 和?通配符开始,探索括号表达式和括号,然后深入研究正则表达式以获得更深入的文件搜索功能。

常见问题

1. Linux 中的通配符是什么?

通配符是Linux中使用的特殊符号,允许用户根据模式匹配文件名或目录名,从而简化文件管理操作。

2.如何使用通配符进行区分大小写的搜索?

要使用通配符执行区分大小写的搜索,您可以使用字符类,例如[fF]匹配文件名中的小写和大写字母。

3.我可以在一个命令中组合不同的通配符吗?

当然可以!您可以在一个命令中组合使用通配符,例如?和 *。例如,?ile*搜索以任意字符开头,后跟“ile”和任意数量的其他字符的任何文件。

来源和图片

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注