linux通配符和三剑客(grep ,awk,sed)正则表达式是不一样的,因此,代表的意义也是有较大区别的;
通配符一般用户命令行bash环境,而linux正则表达式用于grep,sed,awk场景;
* :代表匹配所有字符;
? :匹配且只匹配一个字符;
;:代表两个命令之间的分隔符;
#:在文件中代表是注释;
|:管道,效率不高;
~:当前用户的家目录;
-:上一次路径;
$:变量前需要加的符号;
/:路径分隔符,也是根的意思;
>:输出重定向,会覆盖源文件内容;
>>:追加输出重定向,不会覆盖源文件;
<:输入重定向(xargs);
<<:追加输入重定向(cat);
' ' :单引号,不具有变量功能,即所见即所得;
"":没有变量所见即所得,"$()"会置换变量(常用双引号),不加引号和加双引号意思差不多;
··:反引号,解析命令用(等价于“$()”);
{}:中间为命令区块或内容序列;
!:逻辑运算中的“非”,即是not;
&&:(相当于and)并且,当一个指令执行成功时,执行后一个指令;
||:(相当于or)当一个指令执行失败时,执行后一个指令;
..:上一级目录;
.:当前目录;
来源:https://www.cnblogs.com/LiuChang-blog/p/12313470.html