1.1. 输出记录最多的IP

[腾讯面试题]:一个文本类型的文件,里面每行存放一个登陆者的IP(某些行是重复的),写一个shell脚本输出登陆次数最多的用户。

Ip_input.txt的内容假设如下:

219.217.49.14

175.43.4.87

87.48.98.1

59.73.38.25

219.217.50.14

59.92.48.32

219.217.49.14

59.72.38.142

59.73.38.25

219.217.49.14

#! /bin/bash

# test.sh

sort ip_input | uniq -c | sort | tail -1 | awk '{print $2}' 或者:

sort ip_input | uniq -c | sort -r | head -1 | awk '{print $2}'

uniq -c 选项。它的作用是将重复行去掉并且在每行的前面添加此行重复的次数

sort命令的默认排序方式是升序,使用 -r 选项逆序排序结果,则出现次数最多的IP则排在了第一行

1.2. 处理一下文件内容,将域名取出并进行计数排数,如处理:

http://www.baidu.com/index.html

http://ww.baidu.com/1.html

http://www.baidu.com/2.html

http://post.baidu.com/index.html

http://mp3.baidu.com/index.html

http://www.baidu.com/3.html

http://post.baidu.com/2.html

得到如下结果:域名的出现次数,域名

4     www.baidu.com

2     post.baidu.com

1     mp3.baidu.com

shell程序如下:

方法一:

#cat file | sed -e 's/http:\/\///' -e 's/\/.*//'| sort | uniq -c | sort -nr | head -10

sort -n   依照数值的大小排序。

方法二:

#awk -F/  '{print $3}' file|sort -r|uniq -c|awk '{print $1 "\t",$2}'

1.3. 从a.log文件中提取包含"WARNING"或"FATAL",同时不包含"IGNOR"的行,然后提取以":"分割的第5个字段.

grep -E 'WARNING|FATAL' file|grep -v 'IGNOR'|awk -F: '{print $5}'

1.4. 在shell环境中,如何查看远程Linux系统运行了多少时间?

ssh user@被监控的主机ip "uptime"|awk '{print $3,$4}'

1.5. 腾讯一shell试题.

假设qq.tel文件内容:

12334:13510014336

12345:12334555666

12334:12343453453

12099:13598989899

12334:12345454545

12099:12343454544

分类如下:

[12334]

13510014336

12343453453

...........

[12099]

13598989899

12343454544

............

实现如下:

cat qq.tel|sort -r |awk -F: '{if(tmp!=$1) {tmp=$1;print "["tmp"]"} print $2}'

cat e | sort -r | awk -F: '{if(head!=$1){print $1;head=$1;} print $2} '

awk 一些题目的更多相关文章

  1. shell脚本,awk常见初始化变量的题目。

    文件 内容如下 clone=line1gb=line1gi=line1lib=line1gb=line2gi=line2lib=line2clone=line3gb=line3gi=line3lib= ...

  2. 关于awk的逗号问题

    对于awk逗号的问题,我昨天看的一本书有提过: <Linux就是这个范儿>挺好的书,大家可以看看~~~~ 测试过,总结如下(不知道总结有没有错,欢迎大家吐槽,欢迎大家吐槽,吐槽,吐槽... ...

  3. awk 手册--【转载】

    1. 前言 有关本手册 : 这是一本awk学习指引,  其重点着重于 : l         awk 适于解决哪些问题 ? l         awk 常见的解题模式为何 ? 为使读者快速掌握awk解 ...

  4. 一个利用sed和awk处理文本的小栗子

    这两天做<Linux操作系统>课程的作业,碰到了一个题目,感觉很有意思,很考验对awk掌握的熟练度,故特意拿来分享. 首先说题目是这样的,有这样一段文本: RECORD #这是多余的注释行 ...

  5. awk中文手册

    1. 前言 有关本手册 : 这是一本awk学习指引, 其重点着重于 : l        awk 适于解决哪些问题 ? l        awk 常见的解题模式为何 ? 为使读者快速掌握awk解题的模 ...

  6. awk简单使用『摘.非原创』

    1 awk简介 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入.一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是lin ...

  7. 见过的最好AWK手册

    原文: http://linuxfire.com.cn/~lily/awk.html 简体中文版由bones7456 (http://li2z.cn)整理. 原文:应该是 http://phi.sin ...

  8. 【译】 AWK教程指南 10编写可与用户交互的AWK程序

    执行awk程序时,awk会自动从文件中读取数据来进行处理,直到文件结束.只要将awk读取数据的来源改成键盘输入,便可设计与awk 交互的程序.本节将提供一个该类程序的范例. 范例:本节将编写一个英语生 ...

  9. 【译】 AWK教程指南

    前面的话: 这几天写了一个程序,在同一个目录里生成了很多文件,需要统计其中部分文件的总大小,发现经常用到的ls.du等命令都无济于事,我甚至都想到了最笨的方法,写一个脚本:mkdir一个新目录,把要统 ...

随机推荐

  1. 在命令行窗口中输入EOF

    在Windows中,要输入EOF前,先回车换行,再ctrl+z,在回车,即可.

  2. VC++6.0环境中输出特殊字符

    该方法最靠谱:https://blog.csdn.net/xiaofeilong321/article/details/8713002 输出特殊字符需使用扩展的ASCII码. 修改控制台显示设置: ( ...

  3. 关于使用vue时的个人规范

    js文件: 公共功能文件:common_功能名.js 例:common_ajax.js 页面级功能文件(在不同页面复用):page_功能名.js 放置在html文件中加载的js文件命名:app_htm ...

  4. c++ 在类函数后加const的意义

    我们定义的类的成员函数中,常常有一些成员函数不改变类的数据成员,也就是说,这些函数是"只读"函数,而有一些函数要修改类数据成员的值.如果把不改变数据成员的函数都加上const关键字 ...

  5. (转)JAVA国际化

    转:http://www.cnblogs.com/jjtech/archive/2011/02/14/1954291.html 国际化英文单词为:Internationalization,又称I18N ...

  6. SetFileAttributes

    设置文件属性: SetFileAttributes(文件名, 属性值) 读取文件属性:GetFileAttributes(文件名); 读取文件属性 SetFileAttributes(文件名, FIL ...

  7. 当class有多个class属性时截取操作

    这里是实现以个输入对应的页码就跳转,没有或者为字符情况下弹出不存在对应页面 这里难点就是有currentPage的class属性的截取 $(document).on("click" ...

  8. USACO 2003 Fall Orange Popular Cows /// tarjan缩点 oj22833

    题目大意: n头牛,m个崇拜关系,并且崇拜具有传递性 如果a崇拜b,b崇拜c,则a崇拜c 求最后有几头牛被所有牛崇拜 强连通分量内任意两点都能互达 所以只要强联通分量内有一点是 那么其它点也都会是 按 ...

  9. python自动化基础(参数化)

    一.创建加法类 #定义一个数学加法类 class Mathmethod(): def add(self,a,b): return(a+b) def sub(self,a,b): return(a-b) ...

  10. 笔记:简单的面向对象-web服务器

    import socket import re import multiprocessing import time import mini_frame class WSGIServer(object ...