简单的文件汇总
给定文件a和b
a.txt
127.0.0.1 user1
127.0.0.1 user2
127.0.0.2 user3
127.0.0.3 user4
b.txt
127.0.0.6 userA
127.0.0.2 userB
计算两个文件各自的ip数,以及总ip数
cat a.txt | awk ‘{print $1}’ | sort | uniq > ip_a.txt
cat b.txt | awk ‘{print $1}’ | sort | uniq > ip_b.txt
A的ip数
cat ip_a.txt | wc -l
B的ip数
cat ip_b.txt | wc -l
总的ip数
cat ip_a.txt ip_b.txt > total.txt
cat total.txt | awk ‘{print $1}’ | sort | uniq > ip_total.txt
cat ip_total.txt | wc -l
出现在b.txt而没有出现在a.txt的ip
diff ip_a.txt ip_b.txt
每个username出现的次数,以及每个username对应的ip数
cat a.txt b.txt > users.txt
awk ‘ {++S[$NF]} END {for(a in S) print a, S[a]}’ users.txt
————————————————————————————————————
1.查各种连接状态数量
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’
2.输出第三行,第二列的值
ps auxc |grep -v PID | sort -k4nr | head -n 5 | awk ‘NR==3{print $2}’
3. 按照第4列,以数字方式降序排列
ps auxc | sort -k4nr
4.再取前5名
ps auxc | sort -k4nr | head -n 5