文本三剑客试题

目录

1找出/etc/passwd文件下的root开头的行

[2找出/etc/passwd 含有root 的行](#2找出/etc/passwd 含有root 的行)

[3找出/etc/passwd 文件中 root开头或 mail 开头的行](#3找出/etc/passwd 文件中 root开头或 mail 开头的行)

[4过滤出 /etc/passwd文件中已bin开头的行,并显示行号](#4过滤出 /etc/passwd文件中已bin开头的行,并显示行号)

[5过滤掉/etc/passwd文件中 root开头的行](#5过滤掉/etc/passwd文件中 root开头的行)

[6.在当前目录下所有.cc 的文件中找到含有"luckyboy"内容的文件](#6.在当前目录下所有.cc 的文件中找到含有“luckyboy”内容的文件)

7.找出当前目录下包含127.0.0.1关键字的文件

[8.删除或显示1.file 文件第3行到第7行的内容](#8.删除或显示1.file 文件第3行到第7行的内容)

9.使用awk取出/etc/passwd第一列数据也就是取出用户名

10.用命令行更改config.txt文件,把里面所有的"name"更改为"address"

11.写出查询file.txt以abc结尾的行

12.删除file.txt文件中的空行

13.文件中的空行可能是只有空格的行

14.打印file.txt文件中的第10行

15.删除/etc/fstab文件中所有以#开头的行,行首的#号及#后面的所有空白字符

16.查找最后修改时间是3天前,后缀是.log的文件并删除

17.查找文件中1到20行之间,同时将"aaa"替换为"AAA","ddd"替换"DDD"

18.使用sed命令打印出文件的第一行到第三行

19.在/var/sync/log/cef_watchd-20080424.1og文件中查找大小写不敏感"mysql"字符串中的命令是

20.把data目录及其子目录下所有以扩展名.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy

21.查看linux服务器ip的命令,同时只显示包含ip所在的行打印出来

22.用awk获取文件中第三行的倒数第二列字段

23.请用shell查询file1里面空行的所在行号

24.显示file文件里匹配foo字串那行以及上下5行、显示foo及前5行、显示foo及后5行

25.查找file.log文件中的包含关键字"helloworld"的内容,及其上下两行的内容重定向保存到1.txt

26.当前系统中没有任何文本编辑器(vi,emacs,vim,edit等),如何过滤掉注释行和空行查看/etc/ssh/sshd_config文件

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

28.文件内容排序、文件行取唯一值的命令分别是

29.awk统计当前主机的并发访问量

30.在每一行后增加一空行?

31.在匹配regex的行之后插入一空行?

32.计算文件行数

33.sed将文件test中第50行中的haiwao改为haiwai

34.替换一个文件/etc/passwd里的这root❌0:0:root:/root:/bin/bash一行第二个root为test

35.打印/etc/passwd的奇数行


1找出/etc/passwd文件下的root开头的行

grep '^root' /etc/passwd

awk '/^root/{print $0}' /etc/passwd

sed -n '/^root/p' /etc/passwd

2找出/etc/passwd 含有root 的行

grep 'root' /etc/passwd

awk '/root/{print $0}' /etc/passwd

sed -n '/root/p' /etc/passwd

3找出/etc/passwd 文件中 root开头或 mail 开头的行

egrep "^root|^mail" /etc/passwd

awk '/^root|^mail/{print $0}' /etc/passwd

4过滤出 /etc/passwd文件中已bin开头的行,并显示行号

grep -n '^bin' /etc/passwd

awk '/^bin/{print NR,$0}' passwd

5过滤掉/etc/passwd文件中 root开头的行

grep -v "^root" /etc/passwd

awk '!/^root/{print $0}' /etc/passwd

6.在当前目录下所有.cc 的文件中找到含有"luckyboy"内容的文件

find -name '*.cc' -exec grep -l luckyboy {} \;

7.找出当前目录下包含127.0.0.1关键字的文件

grep -r '127.0.0.1' `find . -type f`

awk '/127.0.0.1/' `find -type f`

sed -n '/127.0.0.1/p' `find -type f`

8.删除或显示1.file 文件第3行到第7行的内容

删除:

sed -i '3,7d' 1.file

显示:

head -n7 1.file | tail -n 5

awk 'NR>=3&&NR<=7' 1.file

awk 'NR==3,NR==7' 1.file

sed -n '3,7p' 1.file

9.使用awk取出/etc/passwd第一列数据也就是取出用户名

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

sed -n 's/:.*//p' /etc/passwd

10.用命令行更改config.txt文件,把里面所有的"name"更改为"address"

sed -i 's#name#address#g' config.txt

11.写出查询file.txt以abc结尾的行

grep 'abc$' file.txt

sed -n '/abc$/p' file.txt

awk '/abc$/' file.txt

12.删除file.txt文件中的空行

sed '/^$/d' file.txt

awk '!/^$/' file.txt

grep -v '^$' file.txt

13.文件中的空行可能是只有空格的行

sed -n '/^$/p' file.txt

awk '/^$/' file.txt

grep '^$' file.txt

14.打印file.txt文件中的第10行

awk 'NR==10{print $0}' file.txt

head -n10 file.txt | tail -n 1

sed -n '10p' file.txt

15.删除/etc/fstab文件中所有以#开头的行,行首的#号及#后面的所有空白字符

sed -i '/^#/d' /etc/fstab

16.查找最后修改时间是3天前,后缀是*.log的文件并删除*

find /tmp/ -type -f -mtime -3 -name ".log" -exec rm -f {} \;

17.查找文件中1到20行之间,同时将"aaa"替换为"AAA","ddd"替换"DDD"

sed '1,20y/ad/AD/' 2.txt

18.使用sed命令打印出文件的第一行到第三行

awk 'NR>=1&&NR<=3' fstab

head -n 3 fstab

sed -n '1,3p' fstab

19.在/var/sync/log/cef_watchd-20080424.1og文件中查找大小写不敏感"mysql"字符串中的命令是

grep -iw 'mysql' /var/sync/log/cef_watchd-20080424.1og

20.把data目录及其子目录下所有以扩展名.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy

sed -i 's/oldgirl/oldboy/g' `find /data/ -name '*.txt'`

21.查看linux服务器ip的命令,同时只显示包含ip所在的行打印出来

ip a s ens33| sed -n '3p' | awk '{print 2}'\| awk -F"/" '{print 1}'

22.用awk获取文件中第三行的倒数第二列字段

awk 'NR==3{print $(NF-1)}' fstab

23.请用shell查询file1里面空行的所在行号

grep -n '^$' file1

awk '/^/{print NR,0}' file1

24.显示file文件里匹配foo字串那行以及上下5行、显示foo及前5行、显示foo及后5行

后5行:grep -A5 "foo" file

前5行:grep -B5 "foo" file

前后5行:grep -C5 "foo" file

25.查找file.log文件中的包含关键字"helloworld"的内容,及其上下两行的内容重定向保存到1.txt

grep -C2 'helloworld' file.log >> 5.txt

26.当前系统中没有任何文本编辑器(vi,emacs,vim,edit等),如何过滤掉注释行和空行查看/etc/ssh/sshd_config文件

awk '!/^$|^#/' /etc/ssh/sshd_config

sed -r '/^$|^#/d' /etc/ssh/sshd_config

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

awk -F":" '{/WARNING|FATAL/&&!/IGNOR/print $5}' a.log

28.文件内容排序、文件行取唯一值的命令分别是

sort uniq

29.awk统计当前主机的并发访问量

netstat -nat | awk '/^tcp/{++state[$NF]}END{for(key in state) print key,"\t",state [key]}'

30.在每一行后增加一空行?

sed 'G' 1

31.在匹配regex的行之后插入一空行?

sed '/regex/G' text.txt

32.计算文件行数

wc -l

33.sed将文件test中第50行中的haiwao改为haiwai

sed '50s/haiwao/haiwai/' test

34.替换一个文件/etc/passwd里的这root❌0:0:root:/root:/bin/bash一行第二个root为test

sed '/root/s/:root:/:test:/' /etc/passwd

35.打印/etc/passwd的奇数行

sed -n '1~2p' /etc/passwd

相关推荐
crabdave1232 分钟前
Ubuntu K8S(1.28.2) 节点/etc/kubernetes/manifests 不存在
linux·ubuntu·kubernetes
hi0_634 分钟前
Git 第一讲---基础篇 git基础概念与操作
linux·服务器·c++·git
蠢货爱好者1 小时前
Linux中web服务器的部署及优化
linux·服务器·前端
Amctwd1 小时前
【Godot】生命周期详解:从节点诞生到销毁的全流程解析
服务器·godot
文牧之1 小时前
PostgreSQL 的 pg_ls_waldir 函数
运维·数据库·postgresql
小小不董2 小时前
Oracle OCP认证考试考点详解083系列09
linux·数据库·oracle·dba
feng995202 小时前
在 VMware 中安装 Ubuntu 全攻略:从零基础到高效开发环境搭建
linux·运维·ubuntu
几道之旅2 小时前
linux种文件名usr的含义是什么?
linux·运维·服务器
Echo``2 小时前
19:常见的Halcon数据格式
java·linux·图像处理·人工智能·windows·机器学习·视觉检测
吴声子夜歌3 小时前
Linux运维——Vim技巧三
linux·运维·vim