tr 用来对标准输出的字符进行替换,压缩和删除
格式 :tr 选项 参数
tr -c 保留字符集1 的字符,其他的字符用字符集2 来进行替换
tr -d 删除字符集中的一部分
tr -s 把字符集1的部分替换成字符集2 的部分 或者 把连续重复出现的字符压缩成一个字符
sed
cut 快速裁剪 awk 都可以按行取列
作用:对字段进行截取和裁剪
cut -d 指定分隔符(默认的分隔符是tab健)
cut -f 对字段进行截取,指定输出端的内容
cut -b 以字节为单位进行截取
cut -c 以字符为单位进行截取
-complement 输出的时候排除指定的字段
-output-delimiter 更改输出内容的分隔符
文件的拆分:
split 大文件拆分成若干小的文件
split -l 按行来进行分割
split -b 按大小进行分割
文件合并: cat paste
面试题:
1.现在有一个日志文件,有5个G,能不能快速的打开
可以使用split进行拆分,split -l 按行拆分 split -b 按大小拆分,我推荐使用split -b 按大小拆分
2.cat合并和paste合并之间的区别?
cat是上下合并
paste是左右合并
3.统计当前主机的连接状态:
ss -antp | grep -v '^State' | cut -d " " -f 1 | sort | uniq -c
正则表达式:由一类特殊字符以及文本字符所编写的一个模式,模式又来匹配文件当中内容(字符)。
校验我们输入的内容是否满足规定,格式、长度等等要求
主要用来匹配文本内容,命令的结果。
通配符:只能用于匹配文件名和目录名,不能匹配文件的内容和命令结果
grep
正则表达式:
基本正则表达式
元字符(字符匹配)
. 表示任意单个字符,也可以是一个汉字
\ 是转义符 表示恢复其本意
[ ] 匹配指定范围内的任意单个字符和数字
[^] 就是取反
^$ 匹配空行
^ 内容 表示以什么为开头
匹配字符出现的次数:
* 匹配前面的字符任意次,0次也可以 也叫贪婪模式 ,尽可能的匹配
.* 匹配前面的任意字符,至少要有1次,匹配所有
\? 匹配前面的字符0次或者1次,可有可无
\+ 匹配前面的字符,至少要出现一次
\{n\} 匹配前面的字符=n次,可以小于n,但是不能大于n,而且前面的字符必须要连续出现
\{m,n\} 匹配前面的字符至少m次,最多n次,必须是连接出现,超出的不在匹配范围
\{,n\} 匹配前面的字符最多N次
\{n,\} 匹配前面的字符最少N次
位置锚定
^ : 以什么为开头 (行首锚定)
$:以什么为结尾 (行尾锚定)
\<或者\b 词首锚定,匹配单词的左侧(连续的数字,字母,下划线都算单词内部)
\>或者\b 词尾锚定,用于匹配单词的右侧
^root$ 整个一行只有这个单词
\broot\b 匹配整个单词 空格隔开也算整个单词
分组和逻辑关系
分组: ( )
或者: \ |
扩展正则表达式