grep、awk、sed的使用:
sed的使用:linux(sed的使用)_梦有一把琐的博客-CSDN博客
awk的使用:linux(awk的使用)_梦有一把琐的博客-CSDN博客
grep的使用:
通配符:
* | 匹配任意字符 |
? | 匹配任意一个字符 |
【a-d】 | 匹配a-d任意一个字符 |
【!a-d】 | 不匹配a-d任意一个字符,取反 |
. | 当前目录 |
.. | 上级目录 |
- | 上一次的目录 |
~ | 家目录 |
> | 输出重定向 |
>> | 追加输出重定向 |
< | 输入重定向 |
<< | 追加输入重定向 |
2> | 错误输出重定向 |
2>> | 错误追加输出重定向 |
>/dev/null | 黑洞(结果不显示) |
cat test 2>&1 >file | 错误输出到终端,标准输出被重定向到文件中 |
cat test >file 2>&1 | 标准输出被重定向到文件中,错误输出也会重定向到文件中 |
&> | 效果跟cat test >file 2>&1一样 |
'' | 输出的内容为整体 |
"" | 输出的内容为整体、解析变量 |
`` | 命令解析,优先执行 |
| | 命令拼接 |
; | 命令结束 |
# | 注释、超级用户提示符 |
$ | 变量、普通用户提示符 |
{} | 序列 |
cp /etc/hosts{,.bak} | 备份 |
基础正则:
^ | 开头 |
$ | 结尾 |
^$ | 空行 |
. | 匹配任意一个且只有一个字符(不匹配空格) |
\ | 转义符 |
* | 匹配前一个字符0次或者1次 |
.* | 匹配所有 |
^.* | 以任意多个字符开头的内容 |
.*$ | 以任意多个字符结尾的内容 |
[abc] | 匹配集合中任意一个字符,也可以写成[a-c] |
[^abc] | 不匹配集合中任意字符,取反 |
扩展正则:
() | 分组过滤表示一个整体。括号的内容可以被\n引用,n为数字,表示引用第几个括号的内容 |
\n | 引用括号的内容(aa)\1 |
a{a,m} | 匹配前一个字符最少n次,最多m次 |
a{n,} | 匹配前一个字符最少n次 |
a{n} | 匹配前一个字符n次 |
a{,m} | 匹配前一个字符最多m次 |
+ | 匹配前一个字符1次或多次 |
[:/]+ | 匹配括号内的: 或 / 1次或者多次 |
| | 或者,同时过滤多个字符串 |
? | 匹配前一个字符0次或1次 |