目录

1、找出/proc/meminfo文件中以s开头的行,至少用三种方式忽略大小写

[root@localhost ~]# grep -E '^[sS]' /proc/meminfo
[root@localhost ~]# sed -r -n '/^[sS]/p' /proc/meminfo
[root@localhost ~]# awk '/^[sS]/{print $0}' /proc/meminfo
[root@localhost ~]# grep -iE '^s' /proc/meminfo

2、显示etc目录下以root,centos或者user开头的信息

[root@localhost ~]# grep -rE '^(root|centos|user)' /etc/

3、找出/etc/init.d/functions文件下包含小括号的行

[root@localhost ~]# grep -E '\(|\)' /etc/init.d/functions

4、输出指定目录的基名

[root@localhost /etc/sysconfig]# pwd | awk -F/ '{print $NF}'

5、找出网卡信息中包含的数字

[root@localhost /etc/sysconfig]# grep -oE '[0-9]+' /etc/sysconfig/network-scripts/ifcfg-eth[01]

6、找出/etc/passwd下每种解析器的用户个数

{"bash": 10, "sh": 9, "zsh": 1}
数组
[root@localhost /etc/sysconfig]# awk -F: '{dic[$NF]++}END{for(i in dic){print i,dic[i]}}' /etc/passwd


以后遇到计算一个参数出现的次数,就想到用字典的方式来计算

7、获取网卡中的ip,用三种方式实现

[root@localhost /etc/sysconfig]# ip a | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}'
[root@localhost /etc/sysconfig]# ip a | sed -r -n '/([0-9]{1,3}\.){3}[0-9]{1,3}/p'
[root@localhost /etc/sysconfig]# ip a | awk '/([0-9]{1,3}\.){3}[0-9]{1,3}/{if(NR==3){print $2}else{print $2,$4}}'

8、搜索/etc目录下,所有的.html或.conf文件中main函数出现的次数

[root@localhost ~]# grep -rE 'main' `find /etc/ -name "*.html" -o -name "*.conf" | xargs ` | wc -l  #  ``是优先运算其内的操作

9、过滤掉php.ini中注释的行和空行

[root@localhost ~]# yum install php php-devel
[root@localhost ~]# grep -vE '^\ *;|^$' /etc/php.ini # 这个文件内的注释是;

10、找出文件中至少有一个空格的行

[root@localhost ~]# grep -E '\ +' /etc/php.ini

11、过滤文件中以#开头的行,后面至少有一个空格

[root@localhost ~]# grep -E '^#\ +' /etc/fstab

12、查询出/etc目录下文件内包含多少个root

[root@localhost ~]# grep -roE 'root' /etc/ | wc -l  # grep -r是递归过滤

13、查询出所有的qq邮箱

[root@localhost ~]# grep -E '[0-9a-zA-Z-_]+@qq\.com'

14、查询系统日志中所有的error

[root@localhost ~]# grep -E 'error' /var/log/messages

15、删除某文件中以s开头的行的最后一个词

[root@localhost ~]# grep -E '^s' 9.txt | sed -r 's/[0-9a-zA-Z]+$//g'  # 词的正则匹配是全部大小写和数字

16、删除一个文件中的所有数字

[root@localhost ~]# sed -r 's/[0-9]//g' 11.txt

17、显示奇数行

[root@localhost ~]# awk -F: 'NR%2==1{print $0}' /etc/passwd

18、删除passwd文件中以bin开头的行到nobody开头的行

[root@localhost ~]# sed -r '/^bin/,/^nobody/d' /etc/passwd  # 哪行至哪行用逗号

19、从第一行开始,每隔两行显示一行

[root@localhost ~]# awk '{if(NR%3==1){print $0}}' /etc/passwd  # 如果是隔3行就%4,以此类推.

20、每隔5行打印一个空行

[root@localhost ~]# awk '{if(NR%5==0){print $0;print "-----------"}else{print $0}}' /etc/passwd

21、不显示指定字符的行

[root@localhost ~]# grep -vE 'g' 2.txt

22、将文件中1到5行中aaa替换成AAA

[root@localhost ~]# sed -r '1,5s/aaa/AAA/g' 13.txt  # 替换用sed,行数在前面加就行了

23、显示用户id为奇数的行

[root@localhost ~]# awk -F: '$3%2==1{print $0}' /etc/passwd

24、显示系统普通用户,并打印系统用户名和id

[root@localhost ~]# awk -F: '$3>=1000{print $1, $3}' /etc/passwd

25、统计nginx日志中独立用户数(ip维度计算)

[root@localhost ~]# awk '/([0-9]{1,3}\.){3}[0-9]{1,3}/{dic[$1]++}END{for(i in dic){print i}}' access.log

以后遇到计算一个参数出现的次数,就想到用字典的方式来计算

26、统计php.ini中每个词的个数

[root@localhost ~]# grep -oE '[0-9a-zA-Z]+' /etc/php.ini | awk '{dic[$1]++}END{for(i in dic){printf "%-15s | %-5d\n", i, dic[i]}}'

以后遇到计算一个参数出现的次数,就想到用字典的方式来计算

linux三剑客试题汇总的更多相关文章

  1. Linux面试题汇总答案

    转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...

  2. Linux面试题汇总答案(转)

    转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...

  3. linux篇-linux面试题汇总

    Linux经典面试题,看看你会几题? 1. 在Linux系统中,以 文件 方式访问设备 . 2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统. 3. Linux文件系统 ...

  4. 收藏所用C#技术类面试、笔试题汇总

    技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...

  5. Linux实战教学笔记12:linux三剑客之sed命令精讲

    第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...

  6. Linux实战教学笔记18:linux三剑客之awk精讲

    Linux三剑客之awk精讲(基础与进阶) 标签(空格分隔): Linux实战教学笔记-陈思齐 快捷跳转目录: * 第1章:awk基础入门 * 1.1:awk简介 * 1.2:学完awk你可以掌握: ...

  7. PHP 高级工程面试题汇总

    PHP高级工程面试题汇总(2018.05) 1.给你四个坐标点,判断它们能不能组成一个矩形,如判断([0,0],[0,1],[1,1],[1,0])能组成一个矩形. 勾股定理,矩形是对角线相等的四边形 ...

  8. 就linux三剑客简单归纳

    就linux三剑客简单归纳: :awk 习题1:用 awk 中查看服务器连接状态并汇总 netstat -an|awk '/^tcp/{++s[$NF]}END{for(a in s)print a, ...

  9. (转)不看绝对后悔的Linux三剑客之sed实战精讲

    不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...

随机推荐

  1. ArcMap操作随记(7)

    1.栅格分辨率调整 [重采样] 2.点集数据对插值模型精度检验 test数据→[子集要素](地统计分析)→train→[插值]→[多值提取至点]→[字段计算器](Abs([value]-[spline ...

  2. 高级IO模型之kqueue和epoll

    目录 简介 block IO和nonblocking IO IO多路复用和select poll epoll kqueue epoll和kqueue的优势 简介 任何一个程序都离不开IO,有些是很明显 ...

  3. Java基础——抽象类

    一.概述: 在Java中,一个没有方法体的方法应定义为抽象方法在public 修饰符后加 abstract修饰符,而类中如果有抽象方法,该类必须定义为抽象类在public 修饰符后加 abstract ...

  4. asp.net多语言网站的完整解决方案

    应用场景:通过前端切换网站使用英语.中文两种语言. 解决思路:ResourceManager会通过当前线程区域性信息,读取对应的Resource文件,从而达到切换语言的效果,其实质是是在切换当前线程的 ...

  5. 如何选择 Linux 操作系统版本?

    一般来讲,桌面用户首选 Ubuntu :服务器首选 RHEL 或 CentOS ,两者中首选 CentOS .根据具体要求:· 安全性要求较高,则选择 Debian 或者 FreeBSD .· 需要使 ...

  6. 如何使用 Spring Boot 实现异常处理?

    Spring 提供了一种使用 ControllerAdvice 处理异常的非常有用的方法. 我们通过实现一个 ControlerAdvice 类,来处理控制器类抛出的所有异常.

  7. Springmvc入门基础(二) ---架构详解

    1.框架结构图 架构流程文字说明 用户发送请求至前端控制器DispatcherServlet DispatcherServlet收到请求调用HandlerMapping处理器映射器. 处理器映射器根据 ...

  8. java-servlet-cookie&sessions

    http协议是无状态协议  无状态协议的意思是服务端与客户端不会记录任何一次通信的信息 服务端"和"客户端",虽然见过很多面,但每次见面仍还是认不出对方,都是陌生人. 但 ...

  9. resion 学习笔记

    resin是一个非常流行的web引用服务器,对servlet和jsp提供了良好的支持,自身采用java开发,支持集群,还支持PHP. resin分为普通版和专业版,主要区别是专业版支持缓存和负载均衡. ...

  10. 学习Puppet(三)

    一.相关概念: 1.  puppet基于C/S架构,使用ruby编写,在类UNIX平台上集中配置管理系统,它可以管理配置文件.用户.cron任务.软件包.系统服务. 2.  puppet把系统实体称为 ...