Linux面试知识考点

Linux面试知识考点

一 Linux的体系结构

  • 体系结构主要分为用户态(用户上层活动和内核态
  • 内核:本质是一端管理计算机硬件设备的程序
  • 系统调用:内核的访问接口,是一种能再简化的额操作
  • 公共函数库:系统调用的组合拳
  • Shell:命令解释器,可编程

二 如何查找特定的文件

2.1 find指令

  1. 语法 ``findpath [option] params`
  2. 作用:在指定目录下查找文件

精准查询,例如:在当前文件下查找:find -name "文件名"

返回当前文件夹的根目录查找:find / -name "文件名"

模糊查询,含有指定字符xxx的文件:find ~ -name "xxx*"

忽略大小写指定字符xxx的文件:find ~ -iname "xxx*"

man find:更多关于find指令的使用说明

三 检索文件内容

3.1 grep指令

  1. 语法:grep [options] pattern file
  2. 全称:Global Regular Expression Print
  3. 作用:查找文件里符合条件的字符串

例如:在文件text1.txt中查找含有zpf的字符串 grep "zpf" text*

3.2 管道操作符 |

  1. 可将指令连接起来,前一个指令的输出作为后一个指令的输入

    例如:返回更目录查找: find ~ | grep "a.txt"

  2. 使用管道注意的要点

    1. 只处理前一个命令正确输出,不处理错误输出
    2. 右边命令必须能够接收标准输入流,否则传递过程中数据会被抛弃
    3. sed,awk,cut,head,top,less,more,wc,join,sort,split等

3.3 面试里常用的方式

  • 查找包含某个字段的相关行 grep ‘partial \ [true \ ]’ bsc-plat-al-data.info.log
  • 筛选出符合正则表达式的内容 grep -o 'engine \ [[0-9a-z]* \ ]'
  • 过滤包含字符串的内容 grep -v 'grep'

四 对文件内容做统计

4.1 awk指令

  1. 语法:awk [options] 'cmd' file
  2. 作用:
    1. 一次读取一行文本,按输入分隔符进行切片,切成多个组成部分
    2. 将切片直接保存在内建的变量中,$1,$2…($0表示行的全部)
    3. 支持对单个切片的判断,支持循环判断,默认分隔符为空格

4.2 面试里常用的方式

  • 筛选文件中某几列的数据 awk ‘{print $1,$3}’ a.txt
  • 依据条=条件筛选文件内容某些列的数据 awk '$1=="udp" && $2==1 {print $0}' c.txt
  • 对内容逐行进行统计操作,并列出对应的统计结果

五 批量替换文本内容

4.1 sed指令

  1. 语法:sed [option] ' sed command' filename
  2. 全称:Stream editor,流编辑器
  3. 作用:适合用于对文本的行内容进行处理

4.2 面试里常用的方式

  • 筛选出以Str开头的行,并将Str替换成String,加入-i为了在目标文本中进行修改

    sed -i 's^Str/String/' replcae.java

  • 筛选出以.点号结尾的行,并替换为;分号 sed -i 's/ \ .$/ \;/' replace.java

  • 筛选出行Jack的行,并替换为me,g是对整行所有的jack进行替换,没有则只替换首个jack

    sed -i's/Jack/me/g' replace.java

  • 把文本中空行删除 sed -i '/^ *$/d' replcae.java

全部评论

相关推荐

不愿透露姓名的神秘牛友
2024-12-18 15:35
程序员牛肉:完全是在胡写简历。 我很好奇你干嘛要在教育经历里面写你是软件二班的班长?你写它的目的是什么?我觉得真的就是很突兀。给我第一感觉就是:你真的是一个心智健全的成年人吗? 另外我也很好奇你是怎么做到参加了这么多所谓的计算机比赛,完事儿一个拿得出手的项目都没有。 自己的项目经历还是图书馆管理系统这种垃圾东西……我的的建议是你都不如大幅度删减一下自己的水奖项,看着真的给人一种又水又学傻了的感觉。 计算机不看奖项,看院校和个人能力。 计算机是强工科,你要投后端的你就应该明白,人家招你进去是指望你干活儿的。那你觉得你这份简历有展示出你的后端水平吗? 你动动你的脑子想一想,人家面试官要想通过你的简历看出你的项目开发能力,最重要的板块就是两个,第一个是你的实习,第二个是你的项目。你没有实习,是不是就应该在项目上好好琢磨琢磨? 你自己看看你项目写的什么描述,你作为一个要后端岗位的应届生,你对你自己项目的描述还仅仅停留在使用mySQL,使用JAVA,使用spring boot框架。给人一眼感觉就感觉完全就是你做的玩具。可能就是你哪一个学期做的课设。 对于应届生来讲,在项目板块要尽量突出自己的技术能力,因为谈业务你肯定也不懂。简单来讲,你的项目要清晰准确的表达:你用哪种技术解决了现有的哪种技术问题,带来了多少的效益提升? 所有关于项目的描述都围绕我说的这种表达方式去写。不要自己自嗨式的写一堆垃圾上去 你既没有实习项目,又没有一个比较好一点的项目,而且院校也比较差,所以找工作会异常的难找。
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务