linux通配符

本文介绍Shell通配符的使用方法,如字符匹配、范围定义等,并演示如何利用这些通配符进行文件操作。此外,还介绍了几个常用的文本处理工具,包括head、tail、less及file等命令的基本用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.字符匹配

*                             匹配0到任意字符

?                           匹配单个字符

[[:alpha:]]                匹配单个字母

[[:lower:]]                匹配单个小写字母

[[:upper:]]               匹配单个大写字母

[[:digit:]]                 匹配单个数字

[[:alnum:]]               匹配单个数字或字母

[[:punct:]]               匹配单个符号

[[:space:]]              匹配单个空格

例如:rm -fr file*  删除当前目录下的所有文件



rm -rf  fi?le     删除当前目录下的以fi?le格式的所有文件名的文件

以此类推

{ }

{1..9}         1-9

例如:touch linux{1..9} 新建linux1到linux9  9个文件


{a..f}            a-f

例如:touch linux{a..f}   新建linuxa到linuxf名称的所有文件


以此类推


{1,3,5}         1,3,5
{a,c,e}         a, c, e
{1..3}{a..c}    1a, 2a, 3a, 2a, 2b, 2c, 3a, 3b, 3c,

[ ]


[a-C]           aA, bB ,cC
[a-c]            aA或者bB或者c
[1-3]            1或者2或者3
[145]           1或者4或者5
[^abc]|[!abc]    除了a并且除了b并且除了c

cp [!abc]/mnt


2.linux中其他常用文本处理工具


head                           显示指定文件的前多少行

head -n 1 123   显示文件的第一行

head -n 7 123   显示文件的前7行

head 123             默认显示文件的前10行


tail                               显示文件的后多少行

tail -n 1 123       显示文件的最后一行

tail -n 5 123       显示文件的最后5行

tail 123               显示文件的最后10行


less                             分页浏览

less 123



file           查看文件类型
file     123

wc            统计文件的字数,字符数,字节数
wc -l         行数
wc -m       字符数
wc -c         字节数
wc -w         字数




Linux系统中,通配符(wildcard)是一种用于匹配文件名、路径或命令参数的特殊字符。它们广泛应用于命令行操作中,特别是在文件管理和搜索任务中。以下是一些常见的通配符及其使用示例。 ### 通配符类型及用法 #### 1. `*`(星号) `*` 用于匹配任意数量的字符(包括零个字符)。它是最常用的通配符之一。 - 示例:查找所有以 `.txt` 结尾的文件。 ```bash ls *.txt ``` 此命令将列出当前目录下所有扩展名为 `.txt` 的文件[^1]。 #### 2. `?`(问号) `?` 用于匹配单个任意字符。 - 示例:查找所有以 `file` 开头,后跟一个字符并以 `.log` 结尾的文件。 ```bash ls file?.log ``` 这将匹配 `file1.log`、`fileA.log` 等,但不会匹配 `file10.log` 或 `file.log`。 #### 3. `[ ]`(字符集合) `[ ]` 用于匹配括号内任意一个字符。 - 示例:查找所有以 `data` 开头,后跟 `1`、`2` 或 `3` 的文件。 ```bash ls data[123].csv ``` 这将匹配 `data1.csv`、`data2.csv` 和 `data3.csv`。 #### 4. `[ - ]`(范围匹配) 可以使用 `-` 在 `[ ]` 中指定字符范围。 - 示例:查找所有以 `log` 开头,后跟数字 `0` 到 `9` 的文件。 ```bash ls log[0-9].txt ``` 这将匹配 `log0.txt` 到 `log9.txt`。 #### 5. `[^ ]` 或 `[! ]`(否定匹配) `[^ ]` 或 `[! ]` 用于匹配不在括号内的字符。 - 示例:查找所有以 `abc` 开头,但不以 `d` 或 `e` 结尾的文件。 ```bash ls abc[!de].log ``` ### 通配符命令中的应用 #### 使用 `whatis` 命令进行通配符搜索 `whatis` 命令可以使用 `-w` 或 `--wildcard` 选项进行通配符搜索,帮助查找命令或函数信息。 - 示例:查找所有以 `ab` 开头的命令或函数。 ```bash whatis -w 'ab*' ``` 输出可能包括: ``` abort (3) - cause abnormal process termination abs (3) - compute the absolute value of an integer ``` #### 使用 `man` 命令查看特定章节的手册 `man` 命令支持通过章节号查找特定的手册页,这也可以与通配符结合使用。 - 示例:查看第 3 章节中与 `abs` 相关的手册页。 ```bash man 3 abs ``` 此命令将显示 `abs` 函数的说明,属于程序库调用章节[^3]。 ### 通配符的注意事项 - 通配符主要用于匹配文件名和路径,但在某些命令中(如 `grep`)也可以用于文本内容匹配。 - 使用通配符时,需注意当前目录下的文件结构,以避免意外匹配到不期望的文件。 - 如果希望禁用通配符扩展,可以使用单引号 `' '` 或双引号 `" "` 将字符串包裹起来。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值