国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Linux Shell > 正文

shell實現學生成績管理系統

2020-07-27 18:49:24
字體:
來源:轉載
供稿:網友

本文實例為大家分享了shell實現學生成績管理系統的具體代碼,供大家參考,具體內容如下

基本的操作

增加
刪除
查詢
展示全部學生信息
vim編輯保存信息的文件

遇到的問題

1.增加學生信息時

增加學生信息時,我用的echo重定向到文件里,這里開始用的一個>,會導致覆蓋。以前的數據沒有了。

總結:重定向符號:

>:覆蓋型寫法 (文件里原來的內容被覆蓋)

echo "hello world" > myfile

>>:添加型寫法 (新內容添加在原來內容的后面)

echo "hello world" >> myfile

2.刪除某一行學生信息

開始不知道怎么刪除,最后查到了grep -v命令。
他表示反向選擇,亦即顯示出沒有 ‘搜尋字符串' 內容的那一行。

具體實現代碼

#! /bin/bash#查詢函數search(){  clear  echo -e "Please enter name >>>/c"  read NAME  #如果記錄為空  if [ ! -f ./record ];then    echo "you must have some scores before you can search!"    sleep 2    clear    return   fi  #沒有輸入名字進行查詢  if [ -z "$NAME" ];then    echo "you didn't enter a name!"    echo -e "Please enter name >>>/c"    read NAME  fi  grep -i "$NAME" ./record 2> /dev/null  case "$?" in   1) echo "Name not in record."    ;;   2) echo "you didnt eter a name to search";    sleep 2;    search;;  esac}#增加信息add(){  clear  echo "Enter name and score of a record"  echo -e "/c"  if [ ! -f ./record ];then    touch record  fi  read NEWNAME  #關于輸出重定向,>代表覆蓋式的寫入 ,>>代表添加式的寫入  echo "$NEWNAME" >>./record  sort -o ./record ./record}#刪除學生信息delete(){  clear   echo -e "Please enter delete name"  read NAME  if [ ! -f ./record ];then   echo "this name is not in record"  else   cp record record.bak   rm -f record   grep -v "$NAME" ./record.bak > record   rm -f record.bak   fi}#顯示所有的記錄函數display(){  more ./record}#利用vim編輯器編輯函數edit(){ vim ./record}#屏幕幫助操作help(){ clear echo "this is a student record program by unix shell language!"}#推出程序quit(){ clear exit}clearwhile truedo  echo "*********************************************"  echo "****   student record menu  ****"  echo "*********************************************"  echo "---------------------------------------------"  echo "#############################################"  echo "    1-search a record    "  echo "    2-add a record     "  echo "    3-delete a record    "  echo "    4-dispaly all records   "  echo "    5-edit record with vim   "  echo "    H-help       "  echo "    Q-exit       "  echo "#############################################"  echo -e -n "Please enter your choice [1,2,3,4,5,6,H,Q]:/c"  read CHOICE  case $CHOICE in  1) search;;  2) add; clear;;  3) delete; clear;;  4) display;;  5) edit; clear;;  H|h) help;;  Q|q) quit;;  *) echo "Invailid choice!";  sleep 2;  clear;;  esac done

更多學習資料請關注專題《管理系統開發》。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宣威市| 波密县| 陈巴尔虎旗| 古浪县| 焉耆| 德令哈市| 铁岭市| 弥渡县| 保亭| 龙海市| 鄢陵县| 宕昌县| 吉木萨尔县| 威信县| 岳池县| 罗定市| 汝城县| 东阿县| 正阳县| 彰化市| 保康县| 巧家县| 阳城县| 永川市| 电白县| 裕民县| 高台县| 潞西市| 海口市| 广灵县| 庄河市| 卢湾区| 大余县| 文成县| 北辰区| 锡林郭勒盟| 峨眉山市| 昆山市| 交城县| 丰镇市| 郎溪县|