Linux 使用select PS3寫乙個名單指令碼

2021-10-24 05:24:58 字數 2225 閱讀 9748

select迴圈比較少用,寫個指令碼練練手。

#!/bin/bash

ps3="學員名單管理系統(1-5)"

while true;

doselect choice in "新增學員名單"

"獲取學員名單"

"隨機點名"

"刪除某個學員的資訊"

"退出";do

case $choice in

"新增學員名單"

) name(

) name

while true;

do read -p "是否繼續新增y|n: " num2

if[$num2 == "y"]|

|[$num2 == "y"

];then

name

elif [

$num2 == "n"]|

|[$num2 == "n"

];then

break

else

echo

"你輸入的字元有誤,請輸入y|n."

break

fidone

clear

break;;

"獲取學員名單"

)echo

"即將為您獲取學員名單,請稍後..."

for i in `cat namelist.txt`;

doecho

-n "$i "

sleep 1

done

echo

echo

-n "獲取完成! "

total=`cat namelist.txt |wc -l`

echo

"總共 $total 個學員!"

break;;

"隨機點名"

)while true;

do line=`cat namelist.txt |wc -l`

num3=$[random%line+1]

sed -n "$p" namelist.txt

sleep 0.3

read -p "是否要返回學員管理系統y/n: " input

if[$input == "y"]|

|[$input == "y"

];then

echo

"正在返回請稍後"

sleep 1

break

elif [

$input == "n"]|

|[$input == "n"

];then

echo

"新的功能正在研發,敬請期待!"

sleep 2

break

else

echo

"你輸入的字元有誤,請輸入y|n"

break

fidone

clear

break;;

"刪除某個學員的資訊"

)while true ;

do awk 'end' namelist.txt

read -p "請輸入要刪除的學員: " num4

flag=0

while read line

doif[

$line == $num4

];then

flag=1

sed -i "/$/d" namelist.txt

echo

"刪除成功!"

break

fidone < namelist.txt

[$flag

-eq 0 ] && echo

"這位同學不在名單中!"

read -p "是否返回學生系統管理首頁y|n: " back

if[$back == "y"]|

|[$back == "y"

];then

echo

"正在返回請稍後"

break

fi

done

clear

break;;

"退出"

)echo

exit;;

*)echo

"暫無此功能,敬請期待!"

break;;

esac

done

done

Linux 使用技巧

1.使用虛擬控制台 登入後按alt f2鍵這時又可以看到 login 提示符,這個就是第二個虛擬控 制台.一般新安裝的linux有四個虛擬控制台,可以用alt f1 alt f4來訪問.虛擬 控制台最有用的時候是當乙個程式出錯鎖住輸入時可以切換到其他虛擬控制台登入 進入後殺掉這個出錯的程序.2.拷貝...

誰在使用Linux?

我們整天在說 linux 但是,究竟是哪些人在實際使用 linux 心裡卻不很清楚,這叫 無的放矢 在我國境內,對於 linux 的使用情況,更是 心中無數 可謂 隨便放矢 使用 linux 與windows 乙個樣,讓人也會 上癮 使用什麼樣的 linux 發行版,其使用習慣會形成一種特定的 亞文...

linux命令 使用

匹配多個 find name pdf o name txt 檢視被暫用的指定埠程序id 主要查詢tcp和udp協議 netstat tunp awk grep 8080 grep 0 9 awk awk f svn提交n多 先add svn st grep e m d a awk xargs svn...