2024年Linux最新Linux运维-第五周-awk周考试题总结_linux试卷 awk(2)

| 大网站数据重要的情况 | 200M~1G | 小于8G给1.5倍,大于8G 最多给8G | 20~200G | 剩余保留,谁用谁分 |

###1.8: 单引号,双引号,不加引号区别(3分)

区别
单引号所见即所得
双引号解析命令,但是需要与或$( )结合
不加引号与双引号类似,支持花括号(通配符)
反引号== $( )与后者作用相同,与双引号类似解析命令

二:填空

2.1:写出一下特殊符号的含义(一种即可)(每个0.5分)
    #   
        配置文件注释
        root用户命令提示符
    ;    
        命令结束,连续不同命令的分隔符
    !    
        逻辑运算中的“非”(not)
~	      当前用户家目录
.(点)	当前目录
..        上一级目录
\-	      切换上一次的目录
\` `	  返回上一级目录
\>	 标准输出重定向,先清空文件内容再写入
\>>	 标准输出追加重定向,追加内容到文件尾部
2>	 标准错误输出重定向,先清空文件然后把错误信息写入文件中
2>>  标准追加错误输出重定向, 把错误信息追加到文件结尾

2.2:写出一下正则表达式的含义(每个0.5分)

.	匹配任意字符 类似通配符的问号 不匹配空行
*	 逐行匹配,前1个字符连续出现0次或0次以上
.*	表示所有内容
^	以...开头的行
$	以...结尾的行
^$	空行
[ ]	匹配[]集合内的任意一个字符
[^ ] 取反,不包含[]集合内的任意一个字符

2.3:写出一下扩展正则表达式的含义(每个0.5分)

+	匹配前一个字符1次或1次以上
?	匹配前一个字符0次或1次	
|	或者	
{ } 匹配字符最少几次,最多几次

三:命令

3.1:找出/etc/passwd文件中以root开头,以bash结尾的行,并显示行号(2分)
grep -n '^root.*bash$' /etc/passwd

3.2:匹配file文件中foo那行及上下5行、显示foo及前5行、显示foo及后5行(2分)
grep -C 5 'foo' file  上下五行
grep -B 5 'foo' file  上五行
grep -A 5 'foo' file 下五行

3.3:打印file.txt文件中的第10行(2分)
 sed -n '10p' file.txt

3.4:查询文件oldboy.txt的第4-6行(2分)
sed -n '4,6p' file.txt

3.5:删除文件oldboy.txt中所有带有数字的行(2分)
sed -i '/[0-9]/d' file.txt

3.6:将文件中的oldboy全部替换为oldgirl,同时将49000448改为31333741。(2分)
 sed -e 's#oldboy#oldgirl#g;s#49000448#31333741#g' file.txt

3.7:把/目录下所有以.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy. (2分)
grep 'oldgirl' `find /-type f -name '*.txt'`|sed -i 's#oldgirl#oldboy#g'

3.8:使用awk取出/etc/passwd第一列数据也就是取出

用户名。(2分)

awk -F: '{print $1}'  /etc/passwd

3.9:用awk获取reg.txt文件中第三行的倒数第二列字段(2分)
cat reg.txt 
Zhang	Dandan		41117397	:250:100:175
Zhang	Xiaoyu		390320151	:155:90:201
Meng	Feixue		0042789		:250:60:50
Wu   Waiwai		70271111	:250:80:75
Liu		Bingbing	41117483	:250:100:175
Wang  Xiaoai		3515064655 :50:95:135

3.10:显示文件reg.txt所有以41开头的ID号码的人的全名和ID号码(2分)
awk  '$3~/^41/{print $1,$2,$3}' reg.txt

3.11:显示小雨的姓名与id号(2分)
awk '$2~/Xiaoyu/{print $1,$2,$3}' reg.txt 

3.12:显示Xiaoyu的捐款.每个值时都有以$开头.如$520$200$135 (2分)
awk '$NF{print $4}' reg.txt |tr ':' '$'
awk -F: -vOFS="$" '$NF{print $2,$3,$4}' reg.txt 

3.13:计算第一次捐款的总额(2分)
awk -F: '{i=i+$2}END{print i}' reg.txt 

3.14:使用awk计算0加到100(2分)
seq 100|awk '{i=i+$1}END{print i}'

3.15:计算/etc/ssh/sshd.config文件中所有以#开头的行数(2分)
awk '$1~/^#/{i=i+1}END{print i}' /etc/ssh/sshd_config 

3.16:取出/etc/fstab 权限(2分)

16777282 -rw-r–r–. 1 root root 501 Mar 26 13:52 /etc/fstab

ll -id /etc/fstab |awk -F'[ .]' '{print $2}'

3.17:查找/oldboy下最近7天修改过、大于10k,小于10M的文件复制到/tmp下(两种方法)(4分)
find /tmp/ -type f -size +1k -size -10M -mtime -7 |xargs -i cp {} /tmp/
find /tmp/ -type f -size +1k -size -10M -mtime -7 -exec cp {} /tmp/ \;
\cp `find /tmp/ -type f -size +1k -size -10M -mtime -7` /tmp/

3.18:调换/etc/passwd 第一列和最后一列内容(至少2种方法)(4分)

abc❌1010:1000::/home/abc:/bin/bash

awk -F: -vOFS=":" '{u=$1;$1=$NF;$NF=u;print $0}' /etc/passwd
sed -r 's#(^.*:)(.*)(/.*)#\3 \1#g' /etc/passwd

3.19:查找/etc下以.conf结尾的文件并以时间命名打包到/tmp下(两种方法)(4分)
find /etc/ -type f -name '*.conf' -exec tar zcf /tmp/a.tar.gz {} +
find /etc/ -type f -name '*.conf'|xargs  tar zcf  /tmp/a.tar.gz {} +
tar zcf /tmp/.a.tar.gz `find /etc/ -type f -name '*.conf'`

3.20:取ip地址(三种方法)(6分)

inet 10.0.0.201/24 brd 10.0.0.255 scope global eth0

ip a s eth0|sed -nr '3s#^.*t (.*)/.*#\1#gp'         #用sed
ip a s eth0|awk -F"[ /]+" 'NR==3{print $3}'         #用awk
ip a s eth0|sed -n '3p'|awk -F'[ /]+' '{print$3}'    #sed+awk


### 最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

### 资料预览

给大家整理的视频资料:

![](https://img-blog.csdnimg.cn/img_convert/799cd196b51726f57bd25578d4c733ea.png)

给大家整理的电子书资料:

  

![](https://img-blog.csdnimg.cn/img_convert/794a450b8c33c75dcc9b5bc554f896b8.png)



**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
-1714481980246)]



**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值