版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
LinuxShell面试题及详细答案(实战版)一、基础命令类(高频基础题)1、如何查看Linux系统内核版本、操作系统版本?答案:内核版本:uname-r完整内核信息:uname-a操作系统版本(CentOS/RHEL):cat/etc/redhat-release通用系统版本:cat/etc/os-release面试补充:工作中排查环境兼容问题,优先用uname-r看内核,用redhat-release看系统版本,适配软件安装包。2、ls-l命令输出的各字段含义是什么?答案:输出示例:-rwxr-xr-x1rootroot4096Sep910:00test.sh1.第一个字符:文件类型(-普通文件、d目录、l软链接、b块设备、c字符设备)2.第2-10位:文件权限(属主、属组、其他用户)3.数字:硬链接数4.第一个root:文件属主5.第二个root:文件所属组6.数字:文件大小(字节)7.时间:文件最后修改时间8.末尾:文件名3、简述软硬链接的区别?答案:1.硬链接:不创建新inode,多个文件名指向同一个inode,只能针对文件,不能跨分区、不能针对目录,删除原文件不影响硬链接文件。2.软链接(符号链接):创建新inode,存储原文件路径,支持文件、目录,可跨分区,原文件删除后软链接失效(红闪报错)。实操命令:硬链接:ln原文件链接文件软链接:ln-s原文件链接文件4、如何查找系统中大于100M的文件?如何查找指定目录下的.log后缀文件?答案:1.查找大于100M文件:find/-size+100M2>/dev/null2.查找指定目录log文件:find/var/log-name"*.log"补充:2>/dev/null是过滤掉权限不足的错误日志,工作中必备参数。5、grep、sed、awk三者的使用场景区别?答案:1.grep:主打文本过滤,只用来查找、匹配关键词行,最简单高效,适合单纯检索日志。2.sed:主打文本行编辑,擅长替换、删除、新增、修改整行文本,常用于批量修改配置文件。3.awk:主打文本切片、统计、计算,擅长按分隔符截取字段、求和、计数、格式化输出,是日志分析核心工具。二、Shell脚本基础核心题1、Shell脚本中$0、$1、$#、$*、$@、$?分别代表什么?答案:$0:脚本本身的文件名$1-$9:脚本的第1到第9个传入参数$#:传入脚本的参数总个数$*:所有传入参数,整体作为一个字符串$@:所有传入参数,逐个独立区分,循环遍历优先用$@$?:上一条命令的执行返回状态(0代表执行成功,非0代表失败)2、Shell脚本中if判断常用参数有哪些?(文件、数字、字符串)答案:文件判断:-f:是否为普通文件且存在-d:是否为目录且存在-e:文件/目录是否存在-r/-w/-x:是否有读/写/执行权限数字判断:-eq等于、-ne不等于、-gt大于、-lt小于、-ge大于等于、-le小于等于字符串判断:==相等、!=不相等、-z字符串为空、-n字符串不为空3、简述Shell中for、while循环的用法和适用场景?答案:for循环:适合遍历固定列表、文件、参数,写法简洁。示例:foriin$(cattest.txt);doecho$i;donewhile循环:适合持续监听、逐行读取文件、条件循环,稳定性更高,读取大文件优先用while,避免for循环换行、空格异常问题。示例:whilereadline;doecho$line;done<test.txt4、Shell脚本中如何定义函数?函数如何传参?答案:函数定义无需关键字,直接函数名+{},函数内参数同样用$1、$2接收。示例:test_func(){echo"接收参数:$1"}test_func123#调用函数并传参注意:函数变量默认全局,如需局部变量加local修饰。三、实战高频编程题(面试必考)1、编写Shell脚本,批量删除当前目录下7天前的.log日志文件答案:脚本内容:#!/bin/bash#批量删除7天前log文件find./-name"*.log"-mtime+7-deleteecho"过期日志清理完成"参数解释:-mtime+7代表修改时间大于7天的文件,-delete直接删除,生产环境可先去掉-delete查看文件,确认无误再执行删除。2、编写脚本,统计当前系统在线用户数量答案:核心命令:who|wc-l完整脚本:#!/bin/bashuser_num=$(who|wc-l)echo"当前系统在线用户数为:$user_num"3、用sed命令批量替换文件中所有“123”为“456”答案:sed-i's/123/456/g'test.txt参数说明:-i:直接修改原文件(不加-i只预览不修改)s:替换操作g:全局替换,不加g只替换每行第一个匹配内容批量替换目录下所有文件:sed-i's/123/456/g'./*4、用awk统计日志中访问IP的出现次数,排序取TOP10答案:假设日志第一列为IP,核心命令:awk'{print$1}'access.log|sort|uniq-c|sort-nr|head-10分步解析:1.awk'{print$1}'截取第一列IP2.sort对IP排序3.uniq-c统计重复次数4.sort-nr按次数倒序排序5.head-10取前十适用场景:排查接口高频访问、恶意IP攻击。5、Shell脚本中如何避免脚本重复执行?(防止并发)答案:通过锁文件控制,原理:脚本启动判断锁文件是否存在,存在则退出,不存在则创建,脚本结束删除锁文件。示例代码:#!/bin/bashlock_file="/tmp/run.lock"if[-f$lock_file];thenecho"脚本正在运行,禁止重复执行"exit1fitouch$lock_file#脚本业务逻辑sleep10#执行完毕删除锁文件rm-rf$lock_file四、生产故障排查类面试题1、磁盘空间满了,df-h显示100%,但是找不到大文件是什么原因?答案:大概率是文件被删除但进程未释放,日志文件被rm删除后,持有文件的进程还在运行,磁盘空间不会释放。排查命令:lsof|grepdeleted解决方式:重启对应服务进程,或者清空文件(不rm),生产中优先用>文件名清空日志,避免删文件不释放空间。2、如何实时监控日志文件输出?和tail-f的区别?答案:实时监控命令:tail-f日志名、tail-F日志名区别:tail-f:跟踪文件inode,日志切割改名后,无法跟踪新日志文件tail-F:跟踪文件名,支持日志切割、文件重建,生产监控日志优先用tail-F3、Shell脚本执行报错Permissiondenied如何解决?答案:原因是脚本没有执行权限,解决命令:chmod+x脚本名补充:也可直接用bash脚本名直接执行,无需添加执行权限。五、进阶面试题1、简述Shell中变量双引号、单引号、反引号的区别?答案:1.单引号'':纯原样输出,所有符号、变量均不解析,原样打印内容。2.双引号"":解析内部变量和转义字符,保留空格,日常变量赋值优先用双引号。3.反引号``:执行内部命令,将命令结果赋值给变量,等价于$(),推荐用$(),嵌套更方便。2、crontab定时任务语法是什么?如何配置每天凌晨2点执行脚本?答案:crontab语法:分时日月周命令每天凌晨2点执行:02***/bin/bash/opt/test.sh>/dev/null2>&1参数说明:>/dev/null2>&1屏蔽所有输出日志
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025全新林业基础知识考试题及答案
- 2025医疗质量安全核心制度考核要点试题及答案
- 2026年2026年摩托车科目一测试题库及答案(考点梳理)试卷+答案含4份
- 2026年复工复产安全试题及答案
- 2026年电子商务概论模拟试题(含答案)
- 2026年人工智能训练师(二级)案例实操试题及解析
- Paget骨病的临床特征及唑来膦酸盐的疗效分析
- 【方案】2026智慧港口解决方案
- 高速公路承赤筹建处质量安全抵押金制度
- 2026下半年小学语文教资面试识字真题演练
- DB 61T 5086-2023高效空调制冷机房设计标准
- 2026年甘肃安泰集团有限责任公司招聘工作人员笔试备考题库及答案解析
- 走心机培训教程
- 高频电刀安全使用课件
- 16.2.1 线段垂直平分线的性质 课件
- 2025-2026学年四川省成都七中高一(上)期中物理试卷(含答案)
- 统招专升本英语4000词考前必背词汇表(含高频短语与记忆法)
- CRRT与体外二氧化碳清除技术联合方案
- 农机租用耕种协议书
- 综合与实践 进位制的认识与探究教学设计初中数学人教版2024七年级上册-人教版2024
- 高考记叙文讲课件
评论
0/150
提交评论