Linux通配符与特殊符号知识大全汇总
符号 |
作用 |
Linux通配符 |
|
* |
匹配任意(0个或多个)字符或字符串,包括空字符串 |
? |
匹配任意1个字符,有且只有一个字符 |
[abcd] |
匹配abcd中任何一个字符,abcd也可是其他任意不连续字符 |
[a-z] |
匹配中a到z之间的任意一个字符, a到z表示范围,字符前后要连续,-表示范围的意思,也可以用连续数字[1-9] |
[!abcd] |
同[^abcd],表示不匹配括号里面的任何一个字符,也可为[!a-d] |
Linux特殊符号:路径和位置相关 |
|
~ |
用户的家目录,超级用户为/root,普通用户为/home |
- |
代表上一次(相对于当前路径)用户所在的路径 |
. |
代表当前目录(点号还有很多其它含义,暂且不表) |
.. |
代表上一级目录 |
Linux特殊符号:引用字符串命令相关 |
|
'' |
单引号,所见即所得,即输出单引号内容时会将单引号内的所有内容都原样输出,或者描述为单引号里面看到的是什么就会输出什么,被称之为强引用 |
"" |
双引号,输出双引号内的所有内容时;如果内容中有命令(要反引下)、变量、特殊转义符等,会先把变量、命令、转义字符解析出结果,然后在输出最终内容来,推荐使用,被称为弱引用 |
空 |
赋值时,如果变量内容又空格会赋值不完整。而在输出内容时,会将含有空格的字符串视为一个整体输出,如果内容中有命令(要反引下)、变量等,会先把变量、命令解析出结果,然后输出最终内容,如果字符串中带有空格等特殊字符,则有可能无法完整的输出,因此需要改加双引号,一般连续的字符串、数字、路径等可以不加任何引号赋值和输出,不过无引号的情况最好用双引号替代之,特别是变量赋值时 |
`` |
反引号,一般用于引用命令,执行的时候命令会被执行,相当于$(),赋值和输出都要将命令用``引起来 |
Linux特殊符号:其它 |
|
; |
表示一个命令的结束,也是命令间的分隔符 |
# |
1)表示是注释内容,给管理员看的注释部分,系统不会执行井号开头的内容2)root用户的命令提示符 |
| |
表示管道,将一个命令处理后的中间内容输出给下一个命令继续处理 |
$ |
1)字符串前加$符号,代表字符串变量内容2)普通用户命令提示符 |
\ |
逃脱符,即将有特殊含义的字符还原成字符本意,例如\$仅代表美元符 |
{} |
1)生成序列2)引用变量作为变量与普通字符分隔 |
& |
将程序放入后台运行符,例如:/bin/sh /scripts/oldboy.sh &(后文会讲) |
Linux特殊符号:重定向系列特殊字符 |
|
0 |
表示标准输入(stdin),配合<或<<使用,数据流从右向左 |
1 |
表示标准输出(stdou),配合>或>>使用,数据流从左向右 |
2 |
标准错误(stderr),配合>或>>使用,数据流从左向右 |
0<或< |
标准输入重定向,清空已有内容,数据从文件流向处理的命令 |
0<<或<< |
追加输入重定向,追加内容到底部,数据从文件流向处理命令 |
1>或> |
标准输出重定向,正常输出重定向到文件,会清空已有内容 |
1>>或>> |
标准输出追加重定向,将内容追加到文件底部,不清空已有内容 |
2> |
错误输出重定向,将标准错误内容重定向到文件,如文件存在内容则清空 |
2>> |
错误输出追加重定向,将标准错误内容追加到文件底部,不会清空已有内容
|