shell面试题及答案
一、单项选择题(每题2分,共10题)
1.在shell脚本中,用于读取用户输入的命令是()
A.echoB.readC.printfD.cat
2.shell脚本文件的第一行通常是()
A.!/bin/bashB.!/bin/shC.以上都有可能D.无特殊要求
3.以下哪个符号用于在shell中表示注释()
A.//B.--C.D.//
4.在shell中,用于获取当前工作目录的命令是()
A.pwdB.cdC.lsD.mkdir
5.要将文件file.txt的内容输出到屏幕上,以下哪个命令正确()
A.catfile.txtB.morefile.txtC.lessfile.txtD.以上都可以
6.以下哪个命令可以用于删除文件()
A.rmdirB.rmC.mvD.cp
7.shell脚本中,用于条件判断的语句是()
A.ifB.whileC.forD.case
8.在shell中,将命令的标准输出重定向到文件file.txt的正确语法是()
A.commandfile.txtB.commandfile.txtC.commandfile.txtD.command2file.txt
9.以下哪个命令可以查看系统当前登录的用户()
A.whoamiB.whoC.usersD.以上都是
10.shell脚本中,用于跳出当前循环的命令是()
A.breakB.continueC.exitD.return
二、多项选择题(每题2分,共10题)
1.以下哪些是常用的shell类型()
A.bashB.shC.cshD.zsh
2.以下哪些命令可以用于文件操作()
A.cpB.mvC.rmD.touch
3.在shell脚本中,常用的循环结构有()
A.for循环B.while循环C.until循环D.do-while循环
4.以下哪些符号可以用于shell变量赋值()
A.=B.:=C.+=D.-=
5.以下哪些命令可以用于查看进程信息()
A.psB.topC.killD.pstree
6.shell脚本中,可以处理命令行参数的变量有()
A.$0B.$1C.$D.$
7.以下哪些命令可以用于文本搜索()
A.grepB.findC.awkD.sed
8.以下哪些是shell中的特殊变量()
A.$?B.$$C.$_D.$@
9.以下哪些命令可以用于创建目录()
A.mkdirB.mkdir-pC.rmdirD.makedir
10.在shell中,重定向的类型有()
A.标准输出重定向B.标准错误重定向C.输入重定向D.追加重定向
三、判断题(每题2分,共10题)
1.shell脚本只能在Linux系统上运行。()
2.在shell中,变量名区分大小写。()
3.echo命令只能输出字符串。()
4.for循环在shell脚本中不能嵌套使用。()
5.shell脚本中,$0表示脚本的第一个参数。()
6.rm命令可以直接删除目录,无需任何参数。()
7.使用重定向时,和的作用是一样的。()
8.shell脚本中,可以使用连接两个命令,只有前一个命令执行成功,后一个命令才会执行。()
9.awk命令主要用于文本处理和数据提取。()
10.在shell中,export命令用于将变量导出为环境变量。()
四、简答题(每题5分,共4题)
1.简述shell脚本中if语句的基本语法结构。
答:if语句基本语法:if[条件];then执行语句;elif[条件];then执行语句;else执行语句;fi。先判断条件是否成立,成立则执行对应语句,可多个elif分支,都不成立则执行else语句。
2.说明shell中变量的作用域有哪些类型。
答:有局部变量和全局变量(环境变量)。局部变量在函数或脚本内部定义和使用,作用域有限;全局变量