来一个的;),xdialog可以用系统本身的dialog来代替.
:
[/home/javalee/myshell]cat chlevel
#!/bin/ksh
#name:chlevel
#
file=/etc/inittab
title=":chlevel"
oldlevel=$(runlevel|cut -c3)
info="当前运行级别:$oldlevel\n请输入启动级别[1-5][按q键离开]"
id=$(whoami)
function error {
xdialog --title $title --no-buttons --infobox "错误!" 6 30
}
function finish {
xdialog --title $title --no-buttons --infobox "启动级别修改完毕,系统将重启" 6
30
reboot
}
function quit {
xdialog --title $title --no-buttons --infobox "离开本程序!" 6 30
}
xdialog --title "身份验证" --no-cancel --inputbox "请输入用户名" 6 30 2>p$$
p=$(cat p$$)
if [[ $p != $id ]]
then xdialog --infobox "$p:为非法用户!退出!!!" 6 30
exit 1
fi
while :
do
xdialog --title $title --no-cancel --inputbox "$info" 10 36 2>tmp$$
input=$(cat tmp$$)
case $input in
1|2|3|4|5) vi -e -s -c ":%s/id:$oldlevel:init/id:$input:init/" -c ":wq!" $file
finish
exit 0;;
q) quit
break;;
*) error
continue;;
esac
done
rm tmp$$ p$$
阅读(1130) | 评论(0) | 转发(0) |