Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
#!/bin/bash
Db_file ="Students.txt"
add_student () {
# Výzva pre podrobnosti študentov
Prečítajte si -p „Zadajte meno študenta:“ Meno
Prečítajte si -p „Zadajte ID študenta:“ ID
prečítať -p „Zadajte študenta major:“ major
# Pripojte podrobnosti študenta do databázového súboru
echo "$ name, $ id, $ major">> "$ db_file"
Echo „Študent úspešne pridal!“
}
list_students () {
# Skontrolujte, či existuje databázový súbor
Ak [! -f "$ db_file"]; potom
Echo „Žiadni študenti v databáze“.
návrat
FI
# Vytlačte podrobnosti študentov zo súboru databázy
Echo "Meno | id | major"
echo "----- | ---- | -----"
CAT "$ db_file" | zatiaľ čo ifs =, prečítajte si meno mena Major; robiť
echo "$ name | $ id | $ major"
vykonaný
}
search_student () {
# Výzva na ID študenta
Prečítajte si -p „Zadajte ID študenta:“ ID
# Vyhľadajte študenta v databázovom súbore
Grep ", $ id," "$ db_file" | zatiaľ čo ifs =, prečítajte si meno mena Major; robiť
Echo "Meno:$ meno"
Echo "ID:$ ID"
Echo "Major:$ major"
návrat
vykonaný
Echo „Študent sa nenašiel“.
}
update_student () {
# Výzva na ID študenta
Prečítajte si -p „Zadajte ID študenta:“ ID
# Nájdite študenta v databázovom súbore
grep ", $ id," "$ db_file"> tmp.txt
Ak [$? -e 0]; potom
Echo „Študent sa nenašiel“.
návrat
FI
# Výzva na nové podrobnosti
prečítať -p "Zadajte nové meno (nechajte prázdne, aby ste udržali aktuálne):" new_name
prečítať -p „Zadajte nového majora (nechajte prázdne, aby ste udržali aktuálnu):“ new_major
# Aktualizujte podrobnosti študentov v dočasnom súbore
zatiaľ čo ifs =, prečítajte si meno staré_id major; robiť
ak ["$ old_id" =="$ id"]; potom
ak [-n "$ new_name"]; potom
name ="$ new_name"
FI
ak [-n "$ new_major"]; potom
Major ="$ new_major"
FI
FI
Echo "$ meno, $ old_id, $ major"
Hotovo
rm tmp.txt
Echo „Študent úspešne aktualizoval!“
}
delete_student () {
# Výzva na ID študenta
Prečítajte si -p „Zadajte ID študenta:“ ID
# Odstrániť študenta z databázového súboru
grep -v ", $ id," "$ db_file"> tmp.txt
mv tmp.txt "$ db_file"
Echo „Študent úspešne odstránil!“
}
zatiaľ čo pravda; robiť
Echo „Menu študentskej databázy“
Echo "1. Pridajte študent"
Echo "2. Zoznam študentov"
Echo "3. Vyhľadajte študenta"
Echo "4. Aktualizácia študenta"
Echo "5. Odstráňte študenta"
Echo "6. Exit"
Prečítajte si -p „Zadajte svoj výber:“
Prípad „$ výber“ v
1) add_student;;
2) List_students;;
3) Search_student;;
4) update_student;;
5) delete_student;;
6) Výstup 0;;
*) Echo "Neplatný výber. Skúste to znova.";;
eSac
vykonaný
`` `
Vysvetlenie:
1. Inicializácia:
- `#!/bin/bash`:Definuje tlmočníka skriptu ako bash.
- `db_file =" Students.txt "`:Nastavuje názov databázového súboru.
2. Funkcie:
- `add_student ()`:
- vyzve používateľa na zadanie podrobností študentov.
- Pripojí podrobnosti k databázovému súboru.
- `List_students ()`:
- Kontroluje, či existuje súbor databázy.
- Vytlačí podrobnosti študentov vo formátovanej tabuľke.
- `search_student ()`:
- vyzve používateľa na zadanie ID študenta.
- Vyhľadáva študenta v databázovom súbore.
- Vytlačí podrobnosti študenta, ak sa nachádzajú.
- `update_student ()`:
- vyzve používateľa na zadanie ID študenta.
- Nájde študenta v databázovom súbore.
- vyzve používateľa na zadanie nových podrobností.
- Aktualizuje podrobnosti študenta v databázovom súbore.
- `delete_student ()`:
- vyzve používateľa na zadanie ID študenta.
- Odstráni študenta zo súboru databázy.
3. Hlavné menu:
- Používa „slučku True` na zobrazenie ponuky možností.
- Číta voľbu používateľa pomocou `Read`.
- Používa príkaz „prípad“ na vykonanie zodpovedajúcej funkcie na základe výberu.
- opustí slučku a skript, ak si užívateľ vyberie možnosť 6.
použiť skript:
1. Uložte kód ako súbor, napr. `Student_db.sh`.
2. Urobte skript spustiteľný:`CHMOD +X Student_db.sh`
3. Spustite skript:`./Student_db.sh`
4. Postupujte podľa pokynov ponuky a vykonajte operácie v databáze študenta.
Poznámka:
- Databázový súbor `Student.txt` bude vytvorený v rovnakom adresári ako skript.
- Databázový súbor používa formát oddelený čiarkami:`Name, ID, Major`.
- Môžete si prispôsobiť skript tak, aby pridal ďalšie funkcie, napríklad triedenie, filtrovanie alebo export údajov do iných formátov.
Funkcia na odstránenie študenta
Hlavné menu