Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15177406
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类:

2008-05-03 10:43:10

来一个的;),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$$
阅读(1104) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~