Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1475458
  • 博文数量: 150
  • 博客积分: 65
  • 博客等级: 民兵
  • 技术积分: 3415
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 10:30
个人简介

游戏后台开发

文章分类

全部博文(150)

文章存档

2020年(1)

2019年(4)

2017年(3)

2016年(6)

2015年(4)

2014年(45)

2013年(86)

2012年(1)

分类: LINUX

2013-09-03 11:32:40

当用户中断shell脚本时,onintr语句转移控制。onintr语句的格式如下:

onintr label

当用户在shell脚本执行期间按下中断键时,shell将控制转移到label开始的语句。使用这条语句可以让脚本被中断时“恰当”地终止。举例来说,当用户中断某个shell脚本时,使用这个语句可以确保在将控制权返还给父shell之前删除临时文件。

下面的脚本说明了onintr。它将不断地循环,直到用户按下中断键,此时将显示一条消息并将控制权转移给本shell:

tcsh $ cat onintr_l
#!/bin/tcsh
# demonstration of onintr
onintr close
while ( 1 )
echo "Program is running."
sleep 2
end
close:
echo "End of program."

如果某个脚本创建了一些临时文件,那么就可以使用onintr来删除它们。

close:
rm -f /tmp/$$*

模糊文件名引用/tmp/$$*匹配/tmp中以当前shell的PID编号开头的所有文件。参见第11.3.3节以获取临时文件命名技术的描述。

阅读(2029) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~