shell测试笔试
机器号:08
SHELL笔试题
一:纠错题:请找出以下代码有错误的地方并更正。(3*20)
1.两个数字相加
#!/bin.bash
read -p “input number1” : num1
read -p “input number2” : num2
echo $(num1+num2)
更正:
#!/bin.bash
read -p "input number1: " num1
read -p "input number2: " num2
echo $(($num1+$num2))
2.将开机selinux状态设置为disabled
#!/bin/bash
sed 'SELINUXs/disabled/enforcing/' /etc/selinux/config
更正:
#!/bin/bash
sed -i '/SELINUXs/enforcing/disabled/' /etc/selinux/config
3.判断100以内被5整除但是不能被7整除的数字
#!/bin/bash
for i in (seq 1 100)
A=$(($i % 5))
B=$(($i%7))
if [ $A -eq 0 ] -a [ $B -ne 0 ]
then
echo $i
fi
更正:
#!/bin/bash
for i in $(seq 1 100)
do
A=$(($i%5))
B=$(($i%7))
if [ $A -eq 0 -a $B -ne 0 ]
then
echo $i
fi
done
二:填空题(2*10)
1.通过什么符号计算传递进来的位置参数?_____$_____
2.如何检查之前的命令是否运行成功?_____$?_____
3.如何获取一个文件每一行以空格为分隔的第三个元素?__awk '{print $3}' file________
4.如何调试bash脚本?___bash -x _______
5. A=abcdefg echo ${A:3:2} 结果是___de_______
6.awk的FS变量作用是什么?_______指定字段分隔的符号____________
7.如何获取数组的长度? ____echo ${#str[@]}________
8.如何引用传递给脚本的第十个位置参数?__${10}_____________
9.$$的含义?______执行脚本的进程号_______________
10.命令 “export” 有什么用? ________设置环境变量____________________
三:选择题(2*10)
1.Awk里的内置变量NF指的是( C )
A) 所有输入文件记录的行数 B) 单个输入文件记录的行数
C) 以指定分隔符号作为分隔的列数 D) AWK处理文件的个数
2.跳出当前循环,进入下一个循环使用的语句是( A )
A)continue B)break C)exit D)return
3.使用正则表达式的语句sed -n '/^\<[^0-9a-d]*\>$/p' /tmp/list输出的可能是以下哪个(C )
A)kevin alice B)selena
C)peter D)23naive
4.以下哪个选项关于数组赋值是错误的( C )
A)A[1]=3 B)A=([15]=1 a d e)
C)A=((6 7 0 2)) D)A=(15 3 47 a)
5.以下哪个表达式可以算出8+3的结果( A )
A)echo $((8+3))
B)echo $(8+3)
C)echo ${8+3}
D)echo $[[8+3]]
6.以下哪个流程语句是判断为真则做循环( B )
A)until B)while
C)case D)for
7.阅读以下代码,该代码输出结果是( C )
#!/bin/bash
i=0
sum=0
while [ $i -le 5 ]
do
sum=$(($sum+$i))
i=$(($i+1))
done
echo $sum
A)10 B)21 C)15 D)该代码执行会产生死循环
8.函数内如何设置局部变量( A )
A)local B)export
C)source D)function
9.以下哪一种指令显示的结果为$test(C )
A)\echo $test B)echo “$test”
C)echo ‘$test’ D)echo “${test}”
10.shift的作用是( B )
A)定义返回值 B)移动位置参数
C)跳出脚本 D)跳出循环
本文来自希曼博客-www.ximan.tech,作者:希曼博客,转载请注明原文链接:https://www.cnblogs.com/lihuaichen/p/8270189.html