找回密码
 注册
搜索

16. 脚本执行命令

已有 91 次阅读2014-2-3 10:52 |个人分类:SHELL编程| 脚本执行命令, shell编程

1.  exit命令

exit命令强行退出一个脚本,并且向调用这个脚本的进程返回一个整数值。例如:

#/bin/bash

exit 1

在一个进程成功运行后,总是向其父进程返回数值0;其他非0返回值都表示发生了某种异常。至于父进程为什么需要接受这样一个返回值,这是父进程的事-----可以定义一些操作来处理子进程的异常退出(通过判断返回值是什么),也可以只是简单的丢弃它。

2.    trap命令

Trap命令用来捕获一个信号。信号是进程间通信的一种方式,可以简单地使用trap命令捕捉并忽视一个信号。下面这个脚本忽略INT信号,并显示一条信息提示用户应该怎样退出这个程序(INT信号当用户在Shell中按下Ctrl+C键时被发送)。

 

# /bin/bash

 

trap `echo “Type quit to exit”` INT

 

while [ “input” != ‘quit’ ]

do

    read input

done

 

有时候忽略用户的中断信号是有益的。某些程序不希望自己在执行任务的时候被打断,而要求用户依照正常手续退出。Trap还可以捕捉其他一些信号。下面这段脚本在用户退出脚本的时候显示“Goodbye!,ftp客户端做的那样。

 

#/bin/bash

 

trap `echo “Goodbye”;exit` EXIT

 

echo “Type ‘quit’ to exit”

 

while [ “$input” != “quit” ]

do

    read input

done

 

注意在trap命令中使用了复合命令“echo “Goodbye”;exit”,即先执行“echo “Goodbye””显示提示信息。再执行exit退出脚本。这条复合命令在捕捉到EXIT信号的时候执行。EXIT信号在脚本退出时被触发。


路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-24 11:28 , Processed in 0.032004 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

返回顶部