Korn Shell 脚本入门
2008-08-20 08:18:43 来源:WEB开发网清单 10. 错误检查函数
##################
function if_error
##################
{
if [[ $? -ne 0 ]]; then # check return code passed to function
print "$1" # if rc > 0 then print error msg and quit
exit $?
fi
}
如果我希望在脚本中运行一个简单命令,那么我可以简单地编写一些类似于上面 $? 的错误检查代码。每当我希望检查某些操作是否失败时,我还可以仅调用 if_error 函数,如清单 11 所示。
清单 11. 调用 if_error 函数
rm –rf /tmp/file #Delete file
if_error "Error: Failed removing file /tmp/file"
mkdir /tmp/test #Create the directory test
if_error "Error: Failed trying to create directory /tmp/test"
每当运行上面的任何一个命令时,就会调用一次 if_error 函数。对应于该特定错误检查的消息将传递给 if_error 函数。这一点很重要,因为它允许您编写一次 Shell 脚本代码,却可以一次又一次地使用它。这样可以更快、更简单地编写 Shell 脚本。
case 语句
case 语句是另一种条件型语句,您可以用该语句来替代 if 语句。case 语句以 case 开头,并且以反写的 (esac) 结尾。当您的脚本变得比较复杂、并且需要执行不同的任务时,可以使用 case 语句迅速地进行构建。清单 12 提供了一个示例。
清单 12. case 语句
case value in
"Mypattern") commands to execute
when value matches
Mypattern
;;
esac
假设您希望在某天中不同的时刻删除一个文件。那么您可以创建一个变量,用于检查具体的时刻:
更多精彩
赞助商链接