一个利用suspend控制终端的shell脚本

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

作者:javalee

代码:
#!/bin/ksh
#这是一个能让所有字符终端挂起/恢复的脚本
#这是一个suspend这个shell内置命令的应用例子
#适用字符模式,root身份
#作者:javalee
#控制终端有很多方式,欢迎指教
#
#脚本开始
###找出自己的终端名
owntty=$(tty)

###找出所有登录终端PID
pid=$(ps -e|awk '/tty[0-9]/&&/[ba|k]sh/'|grep -v "$owntty"|awk '{print $1}')

###必要信息提示
(($#!=1))&&{ echo "Usage:$(basename $0) [k|r]\nk:send HUP \
signal to all tty\nr:send CONT signal to all tty";exit 1; }
###检查命令行参数
case $1 in
        k)      echo "all tty STOP..."
        for i in $pid;do
###挂起登录终端正在执行的shell,不要把自己也"挂"啦 :)
                (suspend $i)&&kill -18 $$ >/dev/null 2>&1
        done
        ;;
        r)      echo "all tty RESTART..."
        for i in $pid;do
###恢复
                kill -18 $i >/dev/null 2>&1
        done
        ;;
esac
#
#
#脚本结束


TAG: Shell

 

评分:0

我来说两句

Open Toolbar