wc:统计数据
基础结构:
wc -参数 文件名
参数:
- -l:统计文件行数
- -w:统计单词个数
- -m:统计文件字符数
- -c:统计文件字节数
cut :剪切数据
基础结构:
cut -参数 文件名
参数:
- -fn:提取第n行数据
提取第一和第3列数据
cut -d , -f1,3 文件名
- -d:分隔符
以冒号为间隔提取
cut -d':' -f 文件名
- –complement:选取指定字段之外的
- -cn:提取第n个字符
- -d:表示字符
提取1到3个字符
cut -c1-3 文件名
提取前两字符
cut -c-2 文件名
提取第5个字符到结尾
cut -c5- 文件名
- -b:表示字节
- -f:表示定义字段
sed:删除,修改,添加;sed元字符
基本结构:
sed -e(默认选项) 文件名
添加:
例如:在文件第二行添加内容
sed ‘2a 想要添加的内容’ 文件名
删除:
基本结构:
sed '/想要删除的内容/d' 文件名
例如:
删除最后一行:
sed '$d' 文件名
删除第二行和最后一行:
sed '2,$d'
查找并替换:
基本结构:
sed 's/要替换的内容/加入的新内容/g' 文件名;g:替换所有,否则只换一个
替换某行并删除某行:
sed -e '2d' -e 's/替换内容/加入新内容/g'
sed元字符:
^
:匹配以什么开头;/^sed/匹配以sed开头的行- $:匹配以什么结束;
- .:匹配一个非换行符的任意字符;/s.d/:匹配s后任意字符,最后一个是d
- *:匹配0个或多个字符;[sS]ed:匹配以sed和Sed
- [^]:匹配一个不在指定范围内的字符::[
^
A-RT-Z]ed:匹配不包含A-R和T-Z的字母开头,紧跟ed的行
awk
基本结构:
awk 参数 'print 内容'
参数:
- -F:指定文件分隔符
a:awk -F:’/^root/{print $2","$3}‘ 文件名
b:只显示2和3列并且在开头和末尾添加内容
awk -F:'BEGIN{print “内容1, 内容2”} {print $2","$3} END{print "内容1,内容2"}‘ 文件名
- awk:内置变量
FILENAME:文件名
NR:行号
NF:切割后列的个数
例如:
统计文件名,每行行号,每行列数
awk -F : '{print “filename:” FILENAME ", linenumber:" NR “,columns:”NF}‘ 文件名
sort :排序
基本结构:
sort -t :nrk 3 文件名
参数:
- -n:按照数值大小排序
- -r:按照相反的顺序排序
- -t:设置排序时使用的分隔符
- -k:指定需要排序的列
- -u:出现相同的数据只显示一行
uniq:检查及删除文件重复内容
基本结构:
uniq 参数 文件名
参数:
- -c:显示重复出现的次数
- -d:仅显示重复出现的列
- -u:仅显示出现一次的列
注意:当重复的行不相邻时,uniq命令不起作用