linux三剑客试题汇总
- 1、找出/proc/meminfo文件中以s开头的行,至少用三种方式忽略大小写
- 2、显示etc目录下以root,centos或者user开头的信息
- 3、找出/etc/init.d/functions文件下包含小括号的行
- 4、输出指定目录的基名
- 5、找出网卡信息中包含的数字
- 6、找出/etc/passwd下每种解析器的用户个数
- 7、获取网卡中的ip,用三种方式实现
- 8、搜索/etc目录下,所有的.html或.conf文件中main函数出现的次数
- 9、过滤掉php.ini中注释的行和空行
- 10、找出文件中至少有一个空格的行
- 11、过滤文件中以#开头的行,后面至少有一个空格
- 12、查询出/etc目录下文件内包含多少个root
- 13、查询出所有的qq邮箱
- 14、查询系统日志中所有的error
- 15、删除某文件中以s开头的行的最后一个词
- 16、删除一个文件中的所有数字
- 17、显示奇数行
- 18、删除passwd文件中以bin开头的行到nobody开头的行
- 19、从第一行开始,每隔两行显示一行
- 20、每隔5行打印一个空行
- 21、不显示指定字符的行
- 22、将文件中1到5行中aaa替换成AAA
- 23、显示用户id为奇数的行
- 24、显示系统普通用户,并打印系统用户名和id
- 25、统计nginx日志中独立用户数(ip维度计算)
- 26、统计php.ini中每个词的个数
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三剑客试题汇总的更多相关文章
- Linux面试题汇总答案
转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...
- Linux面试题汇总答案(转)
转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...
- linux篇-linux面试题汇总
Linux经典面试题,看看你会几题? 1. 在Linux系统中,以 文件 方式访问设备 . 2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统. 3. Linux文件系统 ...
- 收藏所用C#技术类面试、笔试题汇总
技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...
- Linux实战教学笔记12:linux三剑客之sed命令精讲
第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...
- Linux实战教学笔记18:linux三剑客之awk精讲
Linux三剑客之awk精讲(基础与进阶) 标签(空格分隔): Linux实战教学笔记-陈思齐 快捷跳转目录: * 第1章:awk基础入门 * 1.1:awk简介 * 1.2:学完awk你可以掌握: ...
- PHP 高级工程面试题汇总
PHP高级工程面试题汇总(2018.05) 1.给你四个坐标点,判断它们能不能组成一个矩形,如判断([0,0],[0,1],[1,1],[1,0])能组成一个矩形. 勾股定理,矩形是对角线相等的四边形 ...
- 就linux三剑客简单归纳
就linux三剑客简单归纳: :awk 习题1:用 awk 中查看服务器连接状态并汇总 netstat -an|awk '/^tcp/{++s[$NF]}END{for(a in s)print a, ...
- (转)不看绝对后悔的Linux三剑客之sed实战精讲
不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...
随机推荐
- Net6 Configuration & Options 源码分析 Part2 Options
Net6 Configuration & Options 源码分析 Part2 Options 第二部分主要记录Options 模型 OptionsConfigurationServiceCo ...
- 空顺序表的实现(基于c语言)
书中对于创建一个空线性表的定义如下: struct SeqList{ int MAXNUM; // 顺序表中最大元素的个数(也就是最多多少个元素),(其实MAXNUM也可以定义在外面) int n; ...
- 在微信小程序中使用 echarts 图片-例 折线图
首先进入echarts官方[https://echarts.apache.org/handbook/zh/get-started/].这边只需要在小程序中简单应用一下echarts折线图 所以不需要把 ...
- 内网渗透----域环境搭建(server 2012)
先确定两台服务器相通 1.配置静态IP与DNS 2.配置域服务 点击服务器管理器-添加角色和功能-下一步-添加AD域服务: 3.提升为域控制器 安装完成后,可在旗帜处选择提升为域控制器 添加新林 添加 ...
- 什么是LSA,在OSPF中LSA是什么
什么是LSA:链路状态通告,它存在于LSU(链路状态更新包) Type 1 LSA:路由器LSA 每个OSPF路由器都会产生路由器LSA,描述了对应设备的物理接口所连接的链路和接口,并指明 ...
- 手把手带你使用Paint in 3D和Photon撸一个在线涂鸦画板
Paint in 3D Paint in 3D用于在游戏内和编辑器里绘制所有物体.所有功能已经过深度优化,在WebGL.移动端.VR 以及更多平台用起来都非常好用! 它支持标准管线,以及 LWRP.H ...
- Spring Boot 传参 序列化和反序列化
序列化 反序列化
- leedcode算法
1.LeetCode - 合并两个链表 2. 3. 链表是否有环 https://jingyan.baidu.com/article/066074d69afb8d83c31cb068.ht ...
- 什么是Spring的依赖注入?
依赖注入,是IOC的一个方面,是个通常的概念,它有多种解释.这概念是说你不用创建对象,而只需要描述它如何被创建.你不在代码里直接组装你的组件和服务,但是要在配置文件里描述哪些组件需要哪些服务,之后一个 ...
- CSS 网站布局
Flex:https://www.html.cn/archives/8629 Grid:https://www.html.cn/archives/8510/ http://www.ruanyif ...