LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: plan9

请问BASH中的陷阱怎么用?

[复制链接]
 楼主| 发表于 2003-1-21 09:35:21 | 显示全部楼层
最初由 javalee 发布
作了个陷阱的练习,总感觉有些不对劲,帮忙看看
#! /bin/bash
count=0
trap 'echo "Make $count files"' SIGINT
trap 'echo "Exiting......";\
echo "Total files made is $count";exit' SIGQUIT
while true
do
>file$count
count=count+1
done


好像应该这样吧:
trap 'echo "Make $count files"' INT
tarp 'echo "Exiting.....";echo "Total files made is $count";exit' QUIT
发表于 2003-1-21 10:12:08 | 显示全部楼层
谢谢
我再试试~~~~
做通啦 ;) 谢谢
发表于 2003-8-19 01:12:02 | 显示全部楼层

可是在捕获信号后如何返回断点呢?

例如:
declare -f myDealingFunc
# Function definitions here
trap myDealingFunc INT TERM
……
tar -zcf /tmp/usr.tar.gz /usr  #<---就在这里进行过程中捕获信号
……

问题是在myDealingFunc函数中如何返回断点?
如何实现?
发表于 2003-8-19 03:09:11 | 显示全部楼层

弄了一晚上(要算早上也可以)终于好了。

呵呵,原来普通return就可以了。
退出用exit就行。
只是做的时候发现grep特不好用。
egrep才能真正用上正则表达式。
好了,睡觉去……
发表于 2003-8-19 11:37:07 | 显示全部楼层

回复: 弄了一晚上(要算早上也可以)终于好了。

最初由 alphatan 发表
呵呵,原来普通return就可以了。
退出用exit就行。
只是做的时候发现grep特不好用。
egrep才能真正用上正则表达式。
好了,睡觉去……

return实际上是返回函数的一个状态值给调用者,调用者根据这个值作相应的处理.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表