一. 特殊符号
1. 无分类系列
$ 1.命令行 取出变量内容
2.awk中 取某一列
3.普通用户的命令提示符
{} 花括号
! 1.find,awk表示取反
2.命令行中 取历史命令并执行
| 管道
# 1.注释
2.root用户的命令提示符
2 .引号系列
$() `` 先运行里面的命令,把显示到屏幕上的内容留下来
'' 所见即所得 单引号的内容会原封不动显示出来
"" 对双引号里面的特殊符号进行解析 $ $() `` !
3. 重定向系列
> 1> 重定向符号
>> 1>> 追加输出重定向
2> 错误输出重定向
2>> 错误追加输出重定向
< 输入重定向 xargs
<< 追加输入重定向
4.位置系列
~ 用户的家目录
例:
root ~ /root
oldboy ~ /home
. 当前目录
.. 当前目录上级目录
5.判断系列
&& 并且 前面的命令执行《成功》之后 再执行后面的命令
ifdown eth0 && ifup eth0
|| 或者 前面的命令执行《失败》之后 再执行后面的命令
ech huchangxi || echo huchangxi
二. 正则表达式
1. 基础正则表达式(basic regular expression BRE)
^ 以...开头
$ 以...结尾
^$ 空行,什么符号都没有
. 任意一个字符,不会匹配空行
* 前一个字符连续出现了0次或0次以上
.* 所有 任何符号 包含空行
\ 撬棍 转义字符 脱掉马甲打回原形
\n 回车
\s 空白字符
[] [abc] 相当于是一个符号(每次匹配1个字符) =找出包含a或b或c
[^] [^abc] 相当于是一个符号(每次匹配1个字符)=找出除了a或除了b或除了c
2.扩展正则表达式(extended regular expression ERE)
| 或者
+ 前一个字符连续出现1次或1次以上
() 表示一个整体 反向引用/后向引用
{}
?
3. 正则与通配符区别
作用 支持的命令
通配符: 查找文件名 Linux大部分命令都支持 以.txt结尾的文件
正则: 在文件中过滤内容 sed,grep,awk Python Java
三. 通配符
* 所有
{} 花括号