上一篇博客给大家讲了一下shell脚本中常用的工具(查看工具),本篇博客,给大家讲一下大厂面试的shell脚本的题目(重点)。(喜欢shell脚本的可以关注专栏)
1.京东
问题1.1 :使用Linux命令查询sed.txt中空行所在的行号
[root@node01 shell]# awk '/^$/{print NR}' sed.txt
8
问题1.2: 准备数据
创建文件name.txt内容如下:
张三 40
李四 50
王五 60
1.3使用Linux命令计算第二列的和并输出
[root@node01 shell]# cat name.txt | awk -F " " '{sum+=$2}END{print sum}'
150
2.搜狐&和讯网
问题2.1:如何检查Shell脚本里一个文件是否存在?如果不存在该如何处理?
[root@node01 shell]# vim bash.sh
#bin/bash
if [ -f file.txt ];
then
echo '文件存在!'
else
echo '文件不存在!'
fi
[root@node01 shell]# sh bash.sh
文件不存在!
3.新浪
问题3.1:用shell写一个脚本,对文本中无序的一列数字排序
[root@node01 shell]# vim id.txt
9
8
7
6
5
4
3
2
10
1
[root@node01 shell]# sort -n id.txt |awk '{a+=$0;print $0}END{print "sum="a}'
1
2
3
4
5
6
7
8
9
10
sum=55
4.金和网络
问题4.1:请用shell脚本写出查找当前文件夹(/root)下所有的文本文件内容中包含有字符”hh”的文件名称
[root@node01 shell]# grep -r 'hh' /root |cut -d ":" -f1
/root/.ssh/authorized_keys