基于图形界面的改变系统启动运行等级shell脚本

上一篇 / 下一篇  2008-04-11 21:33:21 / 个人分类:Shell

来一个图形界面的;),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$$


TAG: Shell

 

评分:0

我来说两句

Open Toolbar