如何在Shell脚本中使用函数


Posted in 面试题 onSeptember 06, 2015
#!/bin/sh
hello()
{
echo “Hello there today ‘s date is `date`”
}
echo “now going to the function hello ”
hello
echo “back from the function ”

运行脚本func1,结果为:
$func1
now going to the function hello
Hello there today ‘s date is Fri Jul 22 09:05:37 BEIJING 2005
Back from the function

上面例子中,函数定义于脚本顶部。可以在脚本中使用函数名hello调用它。函数执行后,控制返回函数调用的下一条语句,即反馈语句back from the function。

从调用函数中返回
当函数完成处理或希望函数基于某一测试语句返回时,可做两种处理:
1) 让函数正常执行到函数末尾,然后返回脚本中调用函数的控制部分。
2) 使用return返回脚本中函数调用的下一条语句,可以带返回值。0为无错误,1为有错误。

函数返回值测试
可以直接在脚本调用函数语句的后面使用最后状态命令来测试函数调用的返回值。例如:
check_it_is_a_directory $FILENAME
if [$? = 0]
then
echo “All is OK”
else
echo “Something went wrong!”
fi

Tags in this post...

面试题 相关文章推荐
怎样比较两个类型为String的字符串
Aug 17 面试题
WebSphere 应用服务器都支持哪些认证
Dec 26 面试题
"引用"与指针的区别是什么
Sep 07 面试题
SQL面试题
Apr 30 面试题
广州迈达威.net面试题目
Mar 10 面试题
WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回?
Feb 21 面试题
简述DNS进行域名解析的过程
Dec 02 面试题
C#里面如何倒序排列一个数组的元素?
Jun 21 面试题
linux下进程间通信的方式
Dec 23 面试题
LINUX下线程,GDI类的解释
Apr 17 面试题
介绍一下gcc特性
Oct 31 面试题
Java面向对象面试题
Dec 26 面试题
Unix控制后台进程都有哪些进程
Sep 22 #面试题
Shell脚本如何向终端输出信息
Apr 25 #面试题
shell变量的作用空间是什么
Aug 17 #面试题
shell程序如何生命变量?shell变量是弱变量吗?
Nov 10 #面试题
UNIX操作系统结构由哪几部分组成
Feb 17 #面试题
UNIX文件系统常用命令
May 25 #面试题
如何执行一个shell程序
Nov 23 #面试题
You might like
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
windows下zendframework项目环境搭建(通过命令行配置)
2012/12/06 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
PHP析构函数destruct与垃圾回收机制的讲解
2019/03/22 PHP
用js得到网页中所有的div的id
2020/10/19 Javascript
在IE下:float属性会影响offsetTop的取值
2006/12/22 Javascript
javascript 学习之旅 (2)
2009/02/05 Javascript
juqery 学习之四 筛选过滤
2010/11/30 Javascript
精通Javascript系列之数据类型 字符串
2011/06/08 Javascript
js 浏览本地文件夹系统示例代码
2013/10/24 Javascript
struts2+jquery组合验证注册用户是否存在
2014/04/30 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
Backbone.js 0.9.2 源码注释中文翻译版
2015/06/25 Javascript
详解JavaScript的另类写法
2016/04/11 Javascript
jQuery滚动新闻实现代码
2016/06/26 Javascript
JS中位置与大小的获取方法
2016/11/22 Javascript
如何提高Dom访问速度
2017/01/05 Javascript
微信小程序封装http访问网络库实例代码
2017/05/24 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
Python实现根据IP地址和子网掩码算出网段的方法
2015/07/30 Python
详解python中*号的用法
2019/10/21 Python
美国咖啡批发网站:Coffee.org
2017/06/29 全球购物
全球最大最受欢迎的旅游社区:Tripadvisor
2017/11/03 全球购物
阿玛尼意大利官网:Armani意大利
2018/10/30 全球购物
保荐人的岗位职责
2013/11/19 职场文书
《掌声》教学反思
2014/02/23 职场文书
软件售后服务承诺书
2014/05/21 职场文书
2014年祖国生日寄语
2014/09/19 职场文书
离婚协议书范本(通用篇)
2014/11/30 职场文书
2015年酒店销售部工作总结
2015/07/24 职场文书
2016年领导干部正风肃纪心得体会
2015/10/09 职场文书
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏
vue里使用create, mounted调用方法
2022/04/26 Vue.js
js基于div丝滑实现贝塞尔曲线
2022/09/23 Javascript