shell如何實現學生成績管理系統
本文主要為大家詳細介紹了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 } clear while true do 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
相關推薦:
以上是shell如何實現學生成績管理系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

<p>自訂您的作業系統是讓您的日常生活更加愉快的絕佳方式。您可以變更使用者介面、套用自訂主題、新增小工具等等。因此,我們今天將向您展示如何在Windows11上安裝ClassicShell。 </p><p>程式已經存在了很長時間,並允許您修改作業系統。志工現在已經開始運作該組織,該組織於2017年解散。新專案名為OpenShell,目前在Github上可供有興趣的人使用。 </p>&a

您在執行腳本時是否看到此錯誤訊息「Add-AppxPackage:部署失敗,HRESULT:0x80073D02,無法安裝該包,因為它修改的資源目前正在使用中。PowerShell中出現錯誤0x80073D02…」?如錯誤訊息所述,當使用者在前一個進程執行時嘗試重新註冊一個或所有WindowsShellExperienceHost應用程式時,確實會發生這種情況。我們已經獲得了一些簡單的解決方案來快速解決這個問題。修復1–終止體驗主機程序您必須在執行powershell指令之前結束
![探險家.exe 在系統啟動時不啟動 [修復]](https://img.php.cn/upload/article/000/887/227/168575230155539.png?x-oss-process=image/resize,m_fill,h_207,w_330)
如今,許多Windows用戶開始遇到嚴重的Windows系統問題。問題是系統載入後Explorer.exe無法啟動,使用者無法開啟檔案或資料夾。雖然,Windows使用者在某些情況下可以使用命令提示字元手動開啟Windows資源管理器,並且每次系統重新啟動或系統啟動後都必須這樣做。這可能是有問題的,並且是由於下面提到的以下因素造成的。損壞的系統檔案。啟用快速啟動設定。過時或有問題的顯示驅動程式。對系統中的某些服務進行了更改。修改後的註冊表文件。請記住以上所有因素,我們提出了一些肯定會對用戶有所幫助

Linux系統下在處理檔案時,有時候需要刪除檔案末端的行。這種操作在實際應用中很常見,可以透過一些簡單的命令來實現。本文將介紹在Linux系統中快速刪除檔案結尾行的操作步驟,同時提供具體的程式碼範例。步驟一:檢視文件末尾行在進行刪除操作之前,首先需要確認文件的末尾行是哪一行。可以使用tail指令來查看文件的結尾行,具體指令如下:tail-n1filena

無法在Windows 11上運行的 Open shell 並不是一個新問題,而且自從這個新作業系統問世以來一直困擾著使用者。 Open-Shell Windows 11 不工作問題的原因並不具體。它可能是由程式中的意外錯誤、病毒或惡意軟體的存在或損壞的系統檔案引起的。對於不知道的人,Open-Shell 是 2017 年停產的 Classic Shell 的替代品。您可以查看我們的教學課程,以了解如何在 Windows 11 上安裝 Classic Shell。如何替換 Windows 11 的開始菜

適用於 Linux 的 Windows 子系統第一種選擇是使用適用於 Linux 或 WSL 的 Windows 子系統,這是一個相容層,用於在 Windows 系統上本機執行 Linux 二進位執行檔。它適用於大多數場景,允許您在 Windows 11/10 中執行 shell 腳本。 WSL 不會自動可用,因此您必須透過 Windows 裝置的開發人員設定來啟用它。您可以透過前往設定 > 更新和安全性 > 對於開發人員來完成。切換到開發人員模式並透過選擇是確認提示。接下來,找 W

Python 腳本部分範例:企業微信警告、FTP 用戶端、SSH 用戶端、Saltstack 用戶端、vCenter 用戶端、取得網域名稱ssl 憑證過期時間、傳送今天的天氣預報以及未來的天氣趨勢圖;Shell 腳本部分實例:SVN完整備份、Zabbix 監控使用者密碼過期、建置本地YUM 以及上篇文章中有讀者的需求(負載高時,查出佔用比較高的進程腳本並儲存或推播通知);篇幅有些長,也請大家耐心翻到文末,畢竟有彩蛋。 Python 腳本部分企業微信警告此腳本透過企業微信應用,進行微信告警,可用於

推薦適合地理資訊科學專業學生用的電腦1.推薦2.地理資訊科學專業學生需要處理大量的地理資料和進行複雜的地理資訊分析,因此需要一台性能較強的電腦。一台配置高的電腦可以提供更快的處理速度和更大的儲存空間,並且能夠更好地滿足專業需求。 3.建議選擇一台配備高效能處理器和大容量記憶體的電腦,這樣可以提高資料處理和分析的效率。此外,選擇一台具備較大儲存空間和高解析度顯示器的電腦也能更好地展示地理資料和結果。另外,考慮到地理資訊科學專業學生可能需要進行地理資訊系統(GIS)軟體的開發和編程,選擇一台支援較好的圖形處
