linux多选项菜单脚本,linux shell 编写菜单脚本事例

menu2文件代码:

---

#!/bin/sh

#menu2

#Main menu script

#ignore ctrl-c and QUIT interrupts

trap "" 2 3 15

MYDATE=`date +%d/%m/%Y`

THIS_HOST=`hostname -s`

USER=`whoami`

#user level file

USER_LEVELS=priv.user

#hold file

HOLD1=hold1.$$

#colour function

function colour ()

{

case $1 in

black_green)

echo '[40;32m'

;;

black_yellow)

echo '[40;33m'

;;

black_white)

echo '[40;37'

;;

black_cyan)

echo '[40;36m'

;;

red_yellow)

echo '[41;33m'

;;

esac

}

#just read a single key please

function get_char()

{

#get_char

#save current stty setting

SAVEDSTTY=`stty -g`

stty cbreak

dd if=/dev/tty bs=1 count=1 2>/dev/null

stty -cbreak

#restore stty

stty $SAVEDSTTY

}

#turn the cursor on or off

function cursor ()

{

#turn cursor on/off

_OPT=$1

case $_OPT in

on ) echo '[?25h'

;;

off) echo '[?25l'

;;

*) return 1

;;

esac

}

#check what privilege level the user has

function restrict ()

{

colour red_yellow

echo -e -n "\n\n\007 Sorry your are not authorised to use this function"

colour black_green

}

function user_level ()

{

#read in the priv.user file

while read LINE

do

case $LINE in

#ignore comments

\#*) ;;

*) echo $LINE>>$HOLD1

;;

esac

done < $USER_LEVELS

FOUND=false

while read MENU_USER PRIV

do

if [ "$MENU_USER" = "$USER"  ] ; then

FOUND=true

case $PRIV in

yes|YES)

return 0

;;

no|NO)

return 1

;;

esac

else

#no match found read next record

continue

fi

done

if [ "$FOUND" = "false" ] ; then

echo "Sorry $USER  you have not been authorsied to use this menu"

exit 1

fi

}

#called when user selects quit

function my_exit ()

{

colour black_white

cursor on

rm *.$$

exit 0

}

tput init

#display their user levels on the screen

if user_level ; then

ACCESS="Access Mode is High"

else

ACCESS="Access Mode is Normal"

fi

tput init

while :

do

tput clear

colour black_green

cat <

$ACCESS

---------------------------------------------------------------------

User:$USER                 Host:$THIS_HOST            Date:$MYDATE

---------------------------------------------------------------------

1:ADD A RECORD

2:VIEW A RECORD

3:PAGE ALL RECORD

4:CHANGE A RECORD

5:DELETE A RECORD

P:PRINT ALL RECORDS

H:Help screen

Q:Exit Menu

---------------------------------------------------------------------

MAYDAY

colour black_cyan

echo -e -n "\tYour Choice [1,2,3,4,5,P,H,Q] >"

CHOICE=`get_char`

case $CHOICE in

1) ls

;;

2) vi

;;

3) who

;;

4) if user_level; then

ls -l | wc

else

restrict

fi

;;

5) if user_level;then

sort  /etc/passwd

else

restrict

fi

;;

P|p) echo -e "\n\nPrinting recirds ......"

;;

H|h)

tput clear

cat <

This is the help screen ,nothing here yet to help you!

MAYDAY

;;

Q|q) my_exit

;;

*) echo -e "\t\007unknown user respense"

;;

esac

echo -e -n "\tHit the return key to continue"

read DUMMY

done

---

priv.user 文件代码:

#root quanxian wei  YES, daia quanxianwei no

root   yes

daia   no

-----------------------------------

脚本执行后界面如下图:

0818b9ca8b590ca3270a3433284dd417.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值