shell編寫的linux命令練習工具

linux常用命令加選項,有成百上個,僅僅靠背誦忘記得太快,所以寫了此腳本,便于對linux命令的練習,希望能幫助到大家。

運行腳本效果如下:

shell編寫的linux命令練習工具

shell編寫的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或者有人解決了這兩個問題,請與我聯系(腳本中有我的聯系方式),我也會利用閑暇時間針對上述問題作出修改。同時希望大家能共同完善腳本題庫,題庫我會在下周更新。


注:此腳本獨家發布178Linux,更改源碼或者轉載請注明出處。

原創文章,作者:cnc,如若轉載,請注明出處:http://www.www58058.com/71333

(2)
cnccnc
上一篇 2017-03-19 07:52
下一篇 2017-03-19 13:25

相關推薦

  • 文本處理三劍客之grep

    文本處理三劍客之grep 正則表達式(regex) 文本處理工具 grep egrep 試驗環境:CentOS 7.2 正則表達式 Linux的哲學之一“一切皆文件”,學習Linux應得掌握其基本的文本處理工具,這些工具主要包括: 文件內容:less和cat 文件截?。篽ead和tail 文件抽?。篶ut 關鍵字搜索:grep 正則表達式是計算機科…

    Linux干貨 2016-08-07
  • linux進程管理

    linux系統進程查看及管理工具 對于服務器來說重要的IO 設備磁盤網絡 pstree,ps,pidof,pgrep,top,htop,glances,pmap,vmstat,dstat,kill,pkill,job,bg,fg,nohup,nice,renice,killall….. pstree命令: pstree-display …

    Linux干貨 2016-09-09
  • Linux中用戶管理基本命令和用法

    Linux操作系統用戶管理: 特點:多任務,多用戶操作系統(Multi-tasks,Multi-Users) Linux中用戶: 用戶組成: 用戶ID:每個用戶都有一個唯一識別碼稱為用戶ID。        密碼:認證手段 用戶分類:管理用戶 管理員的用戶ID為0       普通用戶 U…

    Linux干貨 2016-08-05
  • http協議及httpd特性詳解

    前言 隨著互聯網的迅猛發展和網絡的普及,各類網站層出不窮,網站也成為企業宣傳和實力展現的主要途徑之一,說到網站就不得不說一下web服務了,現在比較流行的web服務還是當屬Apache即httpd。本文將詳解http協議及httpd的特性。 http協議詳解 http協議 http: Hyper Text Transfer Protocol 超文本傳輸協議 傳…

    Linux干貨 2015-04-13
  • centos下nginx啟動腳本和chkconfig管理

    在安裝完nginx后,要用/usr/local/nginx/sbin/nginx來啟動nginx,顯然十分不方便。如果能像apache一樣,直接通過腳本進行管理就方便多了。 vim /etc/init.d/nginx 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27…

    Linux干貨 2017-09-27
  • 硬鏈接與軟鏈接的區別

    硬鏈接與軟連接                本文僅用于個人學習參考:         簡單介紹了硬鏈接與軟連接的區別。  &nb…

    Linux干貨 2016-10-20
欧美性久久久久