Linux通配符与特殊符号知识大全汇总

    /    2018-09-10

符号

作用

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),配合<或<<使用,数据流从右向左< span="">

1

表示标准输出(stdou),配合>或>>使用,数据流从左向右

2

标准错误(stderr),配合>或>>使用,数据流从左向右

0<或<

标准输入重定向,清空已有内容,数据从文件流向处理的命令

0<<或<<

追加输入重定向,追加内容到底部,数据从文件流向处理命令

1>或>

标准输出重定向,正常输出重定向到文件,会清空已有内容

1>>或>>

标准输出追加重定向,将内容追加到文件底部,不清空已有内容

2>

错误输出重定向,将标准错误内容重定向到文件,如文件存在内容则清空

2>>

错误输出追加重定向,将标准错误内容追加到文件底部,不会清空已有内容

(8)

分享至