(全)面试题 脚本及Linux操作题含答案_第1页
(全)面试题 脚本及Linux操作题含答案_第2页
(全)面试题 脚本及Linux操作题含答案_第3页
(全)面试题 脚本及Linux操作题含答案_第4页
(全)面试题 脚本及Linux操作题含答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面试题脚本及Linux操作题含答题目1简单shell命令按照要求书写shell命令(10分钟):文件操作:如何创建一个目录:一_如何删除一个文件:一_如何创建一个软链接:文件内容操作:如何匹配既包含aa又包含bb的行: 如何匹配包含站点url(如:http:〃www.baid/)的行:系统相关:如何查看spider用户启动的所有服务: 如何查看目前机器listen的所有端口: 如何查看某进程所占用的各种开销〈如CPU、物理内存、虚拟内存、SOCKET句柄、文件句柄,网络流量,SOCKET状态等〉(列出你所知道的尽可能多的命令或者通过哪个文件的内容查看): 如何远程执行一个命令,比如查看另一台机器的pstree结果: 参考答案:cnt='wc-Itmp|awk'{print$1}''awk'{if(NR==,$cnt,)printf("%s\n",$l);elseprintf("%s\t",$l)}'tmp>>aliasdone<site.list注:答案只给出了shell的。考察点:脚本高级应用题目5(本题答案不全):shell实现找出两个文件特有及共有的内容在Linux操作系统环境下,现有两个文本文件:testA文件和testB文件,每个文件的每行内容均不相同,但两个文件之间有交集。请根据以下的要求,分别找出两个文件中的,只在testA中有的内容,只在testB只在testB中有的内容、两个文件都包含的内容、,并将这些内容分别写入文件result_A^result_B%result_same中。(15分钟).请使用shell解决这个问题,并做适当注解说明;.假设文件testA和testB没有任何限制说明,那么处理过程中需要注意哪些方面呢?(请尽可能多的考虑各种可能性)参考答案:.考察linux命令熟悉程度及脚本相关知识及解题思路Iinux下有多个可直接对排序后文件处理的命令,如uniq、comm;可利用awk中的hash表功能进行处理。.考察基本编程语言,及不同语言特性对此题的影响。.考察问题分析能力,思考全面性;可以将此问题思考为"对于此功能,将如何进行测试?〃需注意的点:一行内容超长,文件总行数超多,32位系统下文件大于2G,文件为空,等等mkdirrmIn-ssourcetargetgrepaafile|grepbbgrep"http:〃[八/]*/$"pstreespidernetstat-anp|grepLISTENop、vmstatsnetstat、iostat、ps、/proc/pid/fd/*、/proc/pid/stat、/proc/net/devsdf、sar、ifconfigssh-n-Iusernameaddress〃ls〃考察点:Linux基础知识题目2:统计文件单词出现次数的toplO说明:用shell或perl完成下列试题1)文件words存放英文单词,格式为每行一个英文单词(单词可以重复),统计这个文件中出现次数最多的前10个单词(5分钟)参考答案:uniq-cwords|head-10|awk'{print$2}'考察点:脚本基础知识题目3:查找文件名含abc字符的文件考察:shell命令(3min)问题:直找当前目录下(及子目录),文件名含有abc字符的文件(忽略大小写)参考答案:find.-iname"*abc*"题目4:程序出core后如何调试问题:在linux系统下,程序出core后如何调试?由内存越界引起的core有什么特点?(3分钟)参考答案:出core后,用gdb进行core文件的调试,调用bt命令查看出core时候的程序堆栈状态。内存越界引起的core通常来说,堆栈的调用关系会非常混乱。考察点:此题主要考察:对linux下程序调试的掌握。题目5:将目录下所有文件中的aaa改成bbb说明:用shell完成下列试题:如何将当前目录下所有文件(包括子文件夹中的文件)中的aaa全部修改成为bbb?(5分钟)参考答案:1:正常解法:forfilein'find.-typef';dosed's/aaa/bbb/g'$file>/tmp/abc;cp/tmp/abc$file;done;rm/tmp/abc;#此句可选Find.-typef|xargssed's/aaa/bbb/g',这个也可视为可行,不过需要sed能够实现对自身文件的替换。:find.-typef-execsed's/aaa/bbb/g'{}\;>/tmp/abc-execcp/tmp/abc{}\;这个也是可以的。建议:考虑到用find来搜索目录数,给1/3的分数。考虑到xargs或者-exec的再给1/3的分数,最后功能完全正确的给1/3的分数。考察点:测试工程师和测试开发工程师脚本基础知识题目1打印文件每行的最后一个单词题目描述:已知文本文件A,要求打印每行的最后一个单词。使用任意脚本完成考察点:脚本的使用能力答案:perl版本:@lines=<>;foreach$line(@lines){@words=($line=~/(\S+)/g);print@words[@words-l]."\n";}时间:lOmin题目2:统计某时间点日志分布的条数题目:程序日志打印文件名为logs格式为:NOTICE2009-09-0908:00:00 [proc time:12ms] 请用(shellpythonperlphp)等任何一种脚本语言实现如下功能:统计2009-09-0908点到10点间所有日志分布在0-9ms10-99ms100ms+的日志条数(8分钟)参考答案:Grep-e/zNOTICE2009-09-090[8,9].*[proctime:/d+ms]"logs>temp0-9ms的结果个数:Grep-e"[proctime:[0-9]ms]"temp|wc10-99ms的结果个数:Grep-e"[proctime:[l-9][0-9]ms]Htemp|wc100ms+的结果:Cattemp|wc减去前两个结果个数之和考察点:脚本相关题目3:shell编程实现删除10块硬盘数据问题:一台linux机器上有10块硬盘,分别对应/home/store/0-9,写一个shell程序并行删除这10块硬盘上的数据,并在删除结束时候打印”删除完毕二Q0分钟)参考答案:for((i=0;i<=9;i++))donohuprm-rf/home/store/${i}/*>/dev/null2>&1&delete_stat[${i}]=0donedelete_num=Owhile[$delete_num-It10]dofor((i=0;i<=9;i++))doif[delete_stat[${i}]-eq0]thenfile_num=ls/home/store/${i}/*2>/dev/null|wc-Tif[$file_num-eq0]thendelete_stat[${i}]=ldelete_num='expr$delete_num+1'fifidonesleep1doneecho"删除完毕"考察点:此题主要考察:shell编程、linux操作系统常用命令掌握。次要考察:逻辑思维能力小于20分钟题目4:找出site.list文件中所有站点及其对应的alias并进行输出文件site.list中存放站点列表(不重复),文件site.alias中存放站点及其alias,格式为IDsite定。ID相同的站点互为alias,每个站点的alias数量不例如:定。11•••说明:a)alias是一个站点的别名,比如就是的别名;b)文件中所有字段的分隔符为制表符tab;【问题】请找出site.list文件中所有站点及其对应的al

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论