每日聚焦:Linux面试题shell编程grep,sed,awk
Linux运维在面试时经常被问到,前面给大家分享了一些,有关Shell 编程三剑客有关的面试题今天再大家整理一些分享给大家。
1.什么是 grep 命令?它有哪些常用选项?
(资料图)
grep 命令是一个文本搜索工具,可以在文本文件中查找匹配的字符串。常用选项包括 -i(不区分大小写)、-n(显示行号)、-r(递归搜索子目录)、-w(仅搜索完整单词)、-v(显示不匹配的行)等。
2.如何使用 grep 显示匹配行的行号?
可以使用 grep -n 命令显示匹配行的行号,例如:grep -n "pattern" file.txt。
3.如何使用 grep 展示匹配行之前或之后的若干行?
可以使用 grep -A num 和 grep -B num 分别显示匹配行之后和之前的 num 行文本,也可以使用 grep -C num 显示匹配行前后各 num 行文本。
4.什么是 sed 命令?它有哪些常用选项?
sed 命令是一种流编辑器,可执行基本文本转换。常用选项包括 -i(原地修改文件)、 -e(指定多个编辑命令)、-n(只输出经过编辑的文本)等。
5.如何使用 sed 替换文本中的某个字符串?
可以使用 sed "s/old/new/g" 命令替换文本中的某个字符串,其中 old 为被替换字符串,new 为替换字符串。
6.如何使用 sed 删除文本中的某个字符串?
可以使用 sed "s/old//g" 命令删除文本中的某个字符串,其中 old 为被删除字符串。
7.什么是 awk 命令?它有哪些常用选项?
awk 命令是一种文本处理工具,可逐行扫描文件、处理文本、格式化输出等。常用选项包括 -F(指定分隔符)、-v(定义变量)、-f(从文件中读取代码)等。
8.如何使用 awk 打印文件中某一列?
可以使用 awk "{print $num}" file.txt 命令打印文件中的第 num 列,例如:awk "{print $2}" file.txt。
10.如何使用 awk 实现文本中的字符串替换?
可以使用 awk "{gsub(/old/, "new")};{print}" file.txt 命令实现文本中的字符串替换,其中 old 为被替换字符串,new 为替换字符串。
11.什么是正则表达式?如何在 grep、sed、awk 中使用正则表达式?
正则表达式是一种描述性文本模式,用于匹配、搜索或替换文本中的字符序列。可以在 grep、sed、awk 中使用正则表达式来搜索、替换、过滤文本。常用的正则表达式语法包括元字符、字符集、重复次数等。其中,在 grep 中可以使用 -E 选项启用扩展正则表达式,使用 -P 选项启用 Perl 兼容正则表达式;在 sed 中可以使用 s/regexp/replacement/g 命令实现正则表达式替换;在 awk 中可以使用 ~ 和 !~ 运算符实现正则表达式匹配和不匹配。
12.如何使用 grep 查找包含多个关键字的行?
使用 grep -E "keyword1.*keyword2" file.txt 查找包含关键字1和关键字2的行。
13.如何使用 sed 编辑某个文件特定的行?
使用 sed -i "n s/old_text/new_text/g" file.txt 编辑文件中第n行的特定文本。
14.如何使用 awk 对匹配文本进行计数?
使用 awk "/regex/{sum+=$1;}END{print sum}" file.txt 计数匹配文本。
15.如何使用 grep 统计文件中特定关键字的数量?
使用 grep -c "keyword" file.txt 统计文件中特定关键字出现的数量。
16.如何使用 sed 删除文件中的空白行?
使用 sed -i "/^$/d" file.txt 删除文件中的空白行。
17.如何使用 awk 在文件中查找最小值和最大值?
使用 awk "BEGIN{min=999999;max=-999999}{if($1>max){max=$1};if($1<min){min=$1}}END{print "Min:",min,"Max:",max}" file.txt 在文件中查找最小值和最大值。
18.如何使用 grep 高亮显示匹配的文本?
使用 grep --color "keyword" file.txt 高亮显示匹配的文本。
19.如何使用 sed 打印某个文件的特定行范围?
使用 sed -n "n1,n2 p" file.txt 打印文件中第n1行到第n2行的范围。
20.如何使用 awk 在文件中查找某个字符串并输出其所在行?
使用 awk "/string/{print NR,$0}" file.txt 在文件中查找某个字符串并输出其所在行。
21.如何使用 grep 查找不包含某个字符串的行?
使用 grep -v "exclude_word" file.txt 查找不包含某个字符串的行。
22.如何使用 sed 在文件中插入一行或多行文本?
使用 sed -i "n a\text_to_insert" file.txt 在文件中插入一行或多行文本。
23.如何使用 awk 计算文件中列的平均数?
使用 awk "{sum+=$1;count+=1}END{print "Average is:" sum/count}" file.txt 计算文件中列的平均数。
24.如何使用 grep 排除掉某些字符?
使用 grep -v "exclude_characters" file.txt 排除掉某些字符。
25.如何使用 sed 将一整行文本的字母全部转换成大写或小写?
使用 sed -i "s/./\U&/" file.txt 将一整行文本的字母全部转换成大写;使用 sed -i "s/./\L&/" file.txt 将一整行文本的字母全部转换成小写。
26.如何使用 awk 计算文件中每行之和?
使用 awk "{sum=0;for(i=1;i<=NF;i++){sum+=$i};print sum}" file.txt 计算文件中每行之和。
27.如何使用 grep 查找多个文件中特定关键字?
使用 grep -r "keyword" folder 目录查找多个文件中特定关键字。
28.如何使用 sed 删除 HTML、XML 文件中的标签?
使用 sed -r "s/<[^>]*>//g" file.html 删除 HTML、XML 文件中的标签。
29.如何使用 awk 对文件中某个关键字进行排序?
使用 awk "{print $0 | "sort -k n"}" file.txt 对文件中某个关键字进行排序。
30.如何使用 grep 查找特定关键字所在的目录或文件名?
使用 grep -r -l "keyword" folder 查找特定关键字所在的目录或文件名。
31.如何使用 sed 只保留文件中匹配正则表达式的行?
使用 sed -n "/regex/p" file.txt 只保留文件中匹配正则表达式的行。
32.如何使用 awk 计算某个文件中每个数字之和?
使用 awk "{sum=0;for(i=1;i<=NF;i++){sum+=$i}}END{print sum}" file.txt 计算某个文件中每个数字之和。
33.如何使用 grep 查找包含某个关键字的文件列表?
使用 grep -rl "keyword" folder 统计某个文件夹中所有匹配关键字的文件数量。
34.如何使用 sed 在文件中替换每一行的第一个字符串?
使用 sed -i "s/^string_to_replace/new_string/g" file.txt 在文件中替换每一行的第一个字符串。
35.如何使用 awk 将某个文件中的所有数字相加?
使用 awk "{sum+= $1}END{print sum}" file.txt 将某个文件中的所有数字相加。
36.如何使用 grep 统计某个文件夹中所有匹配关键字的文件数量?
使用 grep -r "keyword" folder > newfile.txt 将所有匹配的内容输出到一个新文件中。
37.如何使用 sed 更改文件中的多个字符?
使用 sed -i "s/old_text/new_text/g" file.txt 更改文件中的多个字符。
38.如何使用 awk 使用指定的分隔符对文件中的列进行拼接?
使用 awk -v OFS="," "{print $1,$2}" file.txt 使用指定的分隔符对文件中的列进行拼接并输出。
关键词:
推荐阅读
毅力号录下了来自火星的声音 科学家如何采集宇宙中的声音?
毅力号录下了来自火星的声音当地时间2月22日,NASA(美国国家航空航天局)发布了毅力号火星车录下的首段来自火星的音频。此外,NASA还公布了 【详细】
将禁用不可降解塑料袋 可以使用那些塑料袋替代品呢?
将禁用不可降解塑料袋国家发改委、生态环境部等九部门联合印发《关于扎实推进塑料污染治理工作的通知》,提出自明年1月1日起,在直辖市、省 【详细】
qq360冲突具体是怎么回事?360QQ为什么掐架?
qq360冲突具体是怎么回事?奇虎360与腾讯之争由来已久,被业界形象地称为3Q大战。双方互诉三次,奇虎360败诉。其中奇虎360诉腾讯公司垄断案 【详细】
亚洲第一高楼介绍 亚洲第一高楼有多高?
亚洲第一高楼介绍第一高楼,迪拜迪拜的哈利法塔,哈利法塔高达828米哈利法塔,原名迪拜铁塔,是世界上最高的建筑和人造结构。该塔高828米, 【详细】
大气污染的原因 大气污染的影响和危害有多大?
大气污染的原因大气污染的原因主要有人为因素(如工业废气、生活用煤、汽车尾气等)和自然因素(如森林火灾、火山爆发等),而前者是主要因素, 【详细】
相关新闻
- 当前速递!特斯拉陷“恶意涨薪”和“频繁降价”风波,探究马斯克真实意图
- 每日聚焦:Linux面试题shell编程grep,sed,awk
- 137,物理学家最痴迷的数字,隐藏了基本粒子之间最深层次的联系
- 3000价位,我心目中值得买的4款大内存手机,华为一加魅族齐聚-全球今日讯
- 【全球热闻】OPPO Find X7曝光,144Hz+OIS光学防抖,150w快充加持
- 今日要闻!香港交易所公布2023年一季度稳健业绩
- 生态调查评估显示:全国生态状况稳中向好
- 全球24艘订单,全拿下了!
- 隐秘细颈龙,被发现了-每日快看
- 如何实现数字永生?涂子沛:你需要一颗“第二大脑”_每日观察
- 几种被证明是真的,但你却难以接受的理论,你都知道多少?_全球动态
- 天天热门:Y系列首款曲面屏,售价1799元起
- 刘伯升被谁杀了_刘伯升怎么死的?
- 10余家公司拉响退市警报“1元退市”加速出清绩差股
- 军校体能测试标准_体能测试标准
- 氧化磷酸化的偶联部位是_氧化磷酸化 全球实时
- 潇潇暮雨子规啼的暮怎么读_潇潇暮雨子规啼的意思?
- 全球第一黄暴女王,回归又杀疯了!-天天要闻
- 五一假期 “文君”带你游成都平乐古镇 还能看非遗表演
- “向海乐活节”开幕式期间,滨城这些路段临时交通管控