2006-9-7 15:16
alligator
请教一个Shell的问题
给Operators写个小程序,基本上就是一个字符界面,选1就执行什么,选2就执行什么.
想问下大家怎么设置trap,让他们除了1,2之外输入别的都无效,什么Ctrl h, Ctrl c之类的.
谢谢.
2006-9-7 16:30
meteor06
kill -l 可以看到各信号量的简单说明
举个例子
trap "" 2
.....
就可以封住ctrl -c 了,封的太多也不好,出问题想断都麻烦 :lol
2006-9-7 19:52
beginner-bj
cat /etc/profile,里面有现成的例子
2006-9-7 20:37
AUF
俺来弄一下斧:
trap "" 2 3 5 15
while true
do
clear
echo "\n"
echo "\t\t\t┏━━━━━━━━━━━━━━┓"
echo "\t\t\t┃ 软 盘 操 作 ┃"
echo "\t\t\t┠──────────────┨"
echo "\t\t\t┃ ┃"
echo "\t\t\t┃ 1--查看本机中已有数据 ┃"
echo "\t\t\t┃ ┃"
echo "\t\t\t┃ 2--查看软盘上的内容 ┃"
echo "\t\t\t┃ ┃"
echo "\t\t\t┃ 3--向软盘追加数据 ┃"
echo "\t\t\t┃ ┃"
echo "\t\t\t┃ 4--向软盘覆盖数据 ┃"
echo "\t\t\t┃ ┃"
echo "\t\t\t┃ 5--从软盘读入数据 ┃"
echo "\t\t\t┃ ┃"
echo "\t\t\t┃ 00--退出 ┃"
echo "\t\t\t┃ ┃"
echo "\t\t\t┠──────────────┨"
echo "\t\t\t┃ 请选择: ┃"
echo "\t\t\t┗━━━━━━━━━━━━━━┛"
echo "^[[19;38H\c"
read Selt1
case $Selt1 in
1) Showlocal;;
2) Tar_tv6;;
3) Tar_rv6;;
4) Tar_cv6;;
5) Read_data;;
00) return 0;;
esac
done
这是当时给业务人员准备的。
[[i] 本帖最后由 AUF 于 2006-9-7 20:41 编辑 [/i]]
2006-9-8 01:45
炸鸡
我建议多放点,紧急情况有时就靠那几个键了。
2006-9-8 08:44
meteor06
[quote]原帖由 [i]炸鸡[/i] 于 2006-9-8 01:45 发表
我建议多放点,紧急情况有时就靠那几个键了。 [/quote]
以前考虑过是否封ctrl-c ,后来一想,好歹ctrl_c是中断当前的,如果特殊情况真需要中断,让操作员去用kill
还不晓得会把什么进程给干掉 :L
不过有的时候规定是这样,没法子
[[i] 本帖最后由 meteor06 于 2006-9-8 08:45 编辑 [/i]]
页:
[1]
Powered by Discuz! Archiver 5.5.0
© 2001-2006 Comsenz Inc.