常用命令
命令 | 含义 |
---|---|
df | 查看硬盘情况 |
free | 查看内存情况 |
netstat -lt | 查看监听的tcp端口 |
netstat -lu | 查看监听的udp端口 |
grep | 检索行 |
cut | 分隔列 |
sort | 排序 |
uniq | 去重 |
vim
替换
# 替换该行的所有a为b
:s/a/b/g
# 替换所有a为b
:%s/a/b/g
统计文本中数据出现的次数
统计文本中数据出现的次数。日志名称为a.txt格式如下:
order:123
order:321
order:123
order:234
order:213
order:321
- 思路:先grep搜索到行,然后cut截取列,在对数据排序并使用uniq统计重复数据。参考shell中字符串截取。uniq -c 显示重复次数,-d显示没有重复的数据
grep -e "^order:" a.txt | cut -f2- -d ":" | sort | uniq -c
# 显示
2 123
1 213
1 234
2 321
awk -F':' '/^order:/ {arr[$2]++}END{for(i in arr) print arr[i],i}' a.txt
# 显示
2 321
1 213
1 234
2 123
-F
指定分隔符,arr[$2]++
创建数组,下标是2指分隔符分隔后第二列数据),元素是初始值0(出现一次执行一次++操作)。
网友评论