Bash环境中可以用通配符(wildcard)来更好的对数据进行处理。
下面介绍一些常用的通配符。
| 符号 | 意义 |
|---|---|
| * | 代表0个到无穷多个任意字符 |
| ? | 代表一定有一个任意字符 |
| [ ] | 代表一定有一个在中括号内得字符(非任意字符)。例如[abcd]代表一定有一个字符,可能是a,b,c,d这四个中的任何一个 |
| [-] | 若有减号在中括号内,代表在编码顺序内的所有字符。例如[0-9]代表0到9之间的所有数字 |
| [^] | 若中括号内得第一个字符为指数符号(^),表示原向选择。例如[^abcd]表示一定有一个字符,只要是非a,b,c,d的其它字符 |
除了通配符,bash环境中还有一些特殊符号。
| 符号 | 内容 |
|---|---|
| # | 在shell脚步中注释作用,视为说明,其后得数据均不执行 |
| \ | 转义字符,将特殊字符或通配符还原成一般的字符 |
| | | 管道(pipe)命令符号 |
| ; | 连续命令执行分隔符 |
| ~ | 当前用户主目录 |
| $ | 变量的前导符,要查看变量的内容就要加上前导符 |
| & | 作业控制符号,将命令变成后台背景下工作 |
| ! | 逻辑运算意义上的”非“ |
| / | slash 目录符号,路径分割符 |
| >,>> | 数据流重定向,输出导向,分别是”替换“与”累加“ |
| <,<< | 数据流重定向,输入导向 |
| ' ' | 单引号,不具有变量替换的功能 |
| " " | 双引号,具有变量替换的功能 |
| ` ` | 中间命令先执行,与$( )功能一样 |
| ( ) | 在中间为子shell的开始与结束 |
| { } | 在中间为命令块的组合 |
更多详细信息,可以参考man bash 页面。

本文深入探讨了Bash环境中的通配符及其应用,包括*、?、[]、[-]、[^]等,并介绍了特殊符号如#、\、|、;、~、$、&、!、/、>、>>、<、<<、''、、``、()、{}
1137

被折叠的 条评论
为什么被折叠?



