首页 > 系统服务 > 详细

shell编写的linux命令练习工具

时间:2017-03-20 10:57:43      阅读:229      评论:0      收藏:0      [点我收藏+]

linux常用命令加选项,有成百上个,仅仅靠背诵忘记得太快,所以写了此脚本,便于对linux命令的练习,希望能帮助到大家。

运行脚本效果如下:

技术分享


技术分享



上边两图一个是运行脚本时的截图,另一个为题库的格式(@做分隔符,所以如果题目中有@一定要替换掉)

下面附上源码

#!/bin/bash
#版本号:1.0

#作者:Mr.L

#WX:504498722
FILE=/root/scripts/testfile.txt      # 此为题库文本文件地址,可以改为你喜欢的地址
LINE=`wc -l < ${FILE}`
sub=””

fileAnswer() {
 MYRAND=$[$[$RANDOM%${LINE}]+1]
 sub=$(sed -n “${MYRAND}p” $FILE)
 
 answer0=$(echo $sub | cut -d”@” -f1)
 answer1=$(echo $sub | cut -d”@” -f2)
 answer2=$(echo $sub | cut -d”@” -f3)
 answer3=$(echo $sub | cut -d”@” -f4)
}

printAnswer() {
 echo “your last subject and answer is :”
 echo “$sub”
 echo “”
}

filetest() {
 fileAnswer
 echo ${answer0}
 read -p “Input your answer: ” answer
 if [ “$answer” == “$answer1” ] || [ “$answer” == “$answer2” ] || [ “$answer” == “$answer3” ];then
  echo “your answer is ok”
  echo “”
 else
  echo “your answer is not OK”
  echo “”
 fi
}

usage() {
 case $1 in
 1)
 filetest
 ;;
 2)
 printAnswer
 ;;
 3)
 filetest
 ;;
 5)
 echo “thank your answer my questions”
  exit 0
 ;;
*)
echo “bash choice”
return 9
 ;;
 esac
}

promt() {
cat<<EOF
*************************************
*                MENU                  *

*   1.Start Test                       *

*   2.Correct Answer                   *

*   3.Next Question                    *

5.exit                  by:Mr.L
*************************************
EOF
}

promt
read -p “please enter your choice: ” choice

while true;do
 usage $choice
 promt
 read -p “please enter your choice again:  ” choice
done


运行脚本后还有两个问题仍需要解决:

1.题目无法显示到菜单框图里

2.$RANDOM% 取随机数是有可能出现连续两次取到同一个数字的问题

3.CentOS7显示汉乱码,6系列显示正常

PS:如果发现脚本中的BUG或者有人解决了这两个问题,请与我联系(脚本中有我的联系方式),我也会利用闲暇时间针对上述问题作出修改。同时希望大家能共同完善脚本题库,题库我会在下周更新。


本文出自 “12726013” 博客,转载请与作者联系!

shell编写的linux命令练习工具

原文:http://12736013.blog.51cto.com/12726013/1908236

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!