shell脚本学习-3(百度shell脚本笔试题)

题目:

1. a.log文件中提取包含"WARNING""FATAL",同时不包含"IGNOR"的行,然后提取以":"分割的第5个字段

2. 编写一个脚本,只想简单的减法运算,要求提示输入变量

3. Shell脚本阅读(解释下面执行的功能),请挑出下面程序或脚本中的错误,并说明错在哪里。

#!/bin/bash

#监控cpuserpoint端口是否正常

logname="/home/forum/log/lpointlog.wf"

flagfile="/home/forum/log/lognum.txt"

lodnum=sed -n "1,1 p"$flagfile

newnum=wc -l ${logname}

echo $newnum >$flagfile

totalnum=expr $newnum -$oldnum

tail -n $totalnum $logname |grep "POINT_THREAD WARNING"

if [$?==0]

then

   mail -s "cpuser point "端口异常,请处理!" [email protected]</dev/null

fi>

 

答案:

 

1.

#!/bin/bash
awk -F: '{if ($0~/(WARNING|FATAL)/ && $0!~/IGNOR/) {print $5}}' a.log

2.

#!/bin/bash
read -p "input a num:" num1
read -p "input another num:" num2
result=`expr $num1 - $num2`
#let "result=num1-num2"
#let result=num1-num2
echo $result
~

3.

命令行替换用反引号,if [$?==0] 应该写做if [ $?=0 ],用来判断上次命令是否执行成功;

倒数第二行应该是>/dev/null,最后fi后面的>去掉。


完整内容所在目录:http://www.mythroad.net/tag/q_written_examination_and_interview_code_title/


更多精彩内容来自:魔豆之路 - 神秘前路,待拨迷雾http://www.mythroad.net

你可能感兴趣的:(shell脚本学习-3(百度shell脚本笔试题))