前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >热饭面试复习:【linux shell 相关】-3

热饭面试复习:【linux shell 相关】-3

作者头像
我去热饭
发布2022-05-19 17:29:09
2090
发布2022-05-19 17:29:09
举报
文章被收录于专栏:测试开发干货

Part1前言

linux shell 常见的面试问题,基本是先让你随便说一些,测试一下你掌握的广度,这时候你至少要说上十个才行,但是!不要说太难的,否则很容易掉进自己的坑里,相当于提醒了面试官去问你 : find ,vi编辑器这种会让面试官出一个极复杂的命令。但是之后 面试官仍然会出一些 非常复杂的命令,本小节复习,除了基础中常见的命令之外,还有常见的复杂命令。

Part2基础命令

注意,每个linux命令都包含很多参数,我这里不像网上教程一样全写出来,我只会把常用的或者面试大概率遇到的参数写出来,以免参数太多大家记混。而且参数一般都是相同的意思和概念,大家可以极大的减轻记忆负担,比如 -R 在几乎所有命令中都代表递归的意思;-f一般都是强制或忽略,-i一般是询问;-v 基本都是显示日志版本号等;-a 隐藏;-d目录;大部分命令的参数都可加可不加。

grep 查找和过滤

grep作为过滤命令,在很多命令后都可以加入grep来进行过滤

代码语言:javascript
复制
grep test *.c 查找后缀为c 且包含test的文件
grep -r test /etc/ 查找etc目录和子目录下包含update字符串的文件
grep test 文件 #在文件中查找包含test的行
grep -e "正则表达式" 文件 #查找文件内符合该正则的行
-i 不去分大小写
grep -v test 查找不含test的文件,-v表示反向
find . -name '*.c' | xargs grep "test" 查找当前目录下所有后缀为.c的文件并找出其中带test的行。

join 链接俩个文件中相同的行

代码语言:javascript
复制
join 文件1 文件2

look 查询单词

代码语言:javascript
复制
look L 文件 #查询文件中所有以L开头的行

pico 编辑文字文件

代码语言:javascript
复制
pico 参数 文件

sed 利用脚本处理文本文件

代码语言:javascript
复制
sed 参数 动作 文件
sed -e 4a\newLine 文件 #在文件第四行后添加一行
sed -i '$a 结束文案' #在文末增加一行文案
其中 -e表示后面接动作,
a表示新增
c 取代
d 删除
i 插入
p 打印
s 取代
sed 's/目标文案/新文案/g' #替换文案,

nl 以行为单位执行命令

代码语言:javascript
复制
nl 文件 | sed '2,5d' #表示打印所有行,但删除2-5行,sed后的字符必须以单引号包裹
nl 文件 | sed '2a 测试开发干货' #第2行后新增一行文案
nl 文件 | sed '1,3c 测试开发干货' #第1-3行替换成文案
nl 文件 | sed '/test/p' #输出所有行,额外输出包含test的行
nl 文件 | sed '/test/d' #输出所有行,但不包括带test的行
nl 文件 | sed -n '具体命令' # 输出所有行且执行某命令
nl 文件 | sed '3,$d' -e 's/旧/新/g' #输出所有行,删除第3-5行,且替换文案。

sort 排序

代码语言:javascript
复制
sort 参数 文件
-r 相反顺序
-b 忽略前空格
-d 只处理英文数字和空格
-f 全部按照大写字母排序
-n 按照数值大小
sort 文件 -k 2 #根据第二列的值进行排序

spell 拼写检查

代码语言:javascript
复制
spell 文件

tr 转换和删除文件中的指定字符

代码语言:javascript
复制
tr 参数 值
-c 反选
-d 删除
cat 文件 |tr a-z A-Z #把文件中所有小写替换成大写字母并打印
cat 文件 |tr ["lower"] ["upper"]

expr 命令行计数器

代码语言:javascript
复制
expr 表达式
如 expr length "测试开发干货" #会输出6
expr substr "测试开发干货" 2 4 #会输出is 开
expr index "测试开发干货" 干 #会打印5
expr 10+2 #会打印12

uniq 行去重

代码语言:javascript
复制
uniq 参数 文件
-c 显示重复次数
-d 显示重复行列

wc 计算字数

代码语言:javascript
复制
wc 参数 文件
-l 显示行数
-w 显示字数
-c 显示字节数

let 声明变量

代码语言:javascript
复制
let a=5 
let b=a+2
echo b
输出 7

好了,本节学习的内容够多了,大家放松放松,准备迎接下一节复习吧~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发干货 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Part1前言
  • Part2基础命令
    • grep 查找和过滤
      • join 链接俩个文件中相同的行
        • look 查询单词
          • pico 编辑文字文件
            • sed 利用脚本处理文本文件
              • nl 以行为单位执行命令
                • sort 排序
                  • spell 拼写检查
                    • tr 转换和删除文件中的指定字符
                      • expr 命令行计数器
                        • uniq 行去重
                          • wc 计算字数
                            • let 声明变量
                            领券
                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档