关于function
场景:让用户输入一个数字,程序由1+2....一直累加到用户输入的数字为止
#!/bin/bash
PATH=$PATH:~/script
export PATH
#chech whether the input is num
function is_num(){
#判断用户输入的是否是数字,是数字则返回1,否则返回0(不能输入0)
grep_format=$(echo $1 |egrep '^[1-9]+[0-9]?$' )
if [ "$grep_format" == "" ];then
return 0
else
return 1
fi
}
read -p "please input an integer:" max
is_num_re=$(is_num $max)
#echo $?
#if [ "$is_num_re" == "0" ];then
#用户的输入不是数字时,直接退出
if [ $? -eq 0 ];then
echo "It's not an integer"
exit 1
fi
sum=0
#累加
for((i=1;i<=$max;i=i+1))
do
sum=$(($sum+$i))
done
echo "sum: " $sum
exit 0
主要有几个注意点:
1.function的返回值用return n;的形式,如果没有return,则最后一个语句的执行结果即是返回值。(这一点上,Ruby和Linux是一样的 )
2.获取function的返回值,用$?(在Linux里面,$?是用来获取上一个命令的执行结果返回码,可以把function理解为一个命令。在本例中,is_num_re=$(is_num $max),is_num_re为空)
3.注意字符串比较符==与前后的比较对象中间有空格。
关于function的更多相关文章
- 通过百度echarts实现数据图表展示功能
现在我们在工作中,在开发中都会或多或少的用到图表统计数据显示给用户.通过图表可以很直观的,直接的将数据呈现出来.这里我就介绍说一下利用百度开源的echarts图表技术实现的具体功能. 1.对于不太理解 ...
- jsp中出现onclick函数提示Cannot return from outside a function or method
在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...
- JavaScript function函数种类
本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通函数:介绍普通函数的特性:同名覆盖.arguments对象.默认返回值等. 2. 匿名函数:介绍匿名函数的特性:变量匿名函数.无名称匿名函数. ...
- 在ubuntu16.10 PHP测试连接MySQL中出现Call to undefined function: mysql_connect()
1.问题: 测试php7.0 链接mysql数据库的时候发生错误: Fatal error: Uncaught Error: Call to undefined function mysqli_con ...
- jquery中的$(document).ready(function() {});
当文档载入时执行function函数里的代码, 这部分代码主要声明,页面加载后 "监听事件" 的方法.例如: $(document).ready( $("a") ...
- Function.prototype.toString 的使用技巧
Function.prototype.toString这个原型方法可以帮助你获得函数的源代码, 比如: function hello ( msg ){ console.log("hello& ...
- 转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38
转:ORA-15186: ASMLIB error function = [asm_open], error = [1], 2009-05-24 13:57:38http://space.itpub. ...
- [Xamarin] 透過Native Code呼叫 JavaScript function (转帖)
今天我們來聊聊關於如何使用WebView 中的Javascript 來呼叫 Native Code 的部分 首先,你得先來看看這篇[Xamarin] 使用Webview 來做APP因為這篇文章至少講解 ...
- Oracle数据库自动备份SQL文本:Procedure存储过程,View视图,Function函数,Trigger触发器,Sequence序列号等
功能:备份存储过程,视图,函数触发器,Sequence序列号等准备工作:--1.创建文件夹 :'E:/OracleBackUp/ProcBack';--文本存放的路径--2.执行:create or ...
- javascript中的Function和Object
写的很好,理解了很多,特此转发记录 转自:http://blog.csdn.net/tom_221x/archive/2010/02/22/5316675.aspx 在JavaScript中所有的对象 ...
随机推荐
- Kendo UI开发教程(6): Kendo DataSource 概述
Kendo 的数据源支持本地数据源(JavaScript 对象数组),或者远程数据源(XML, JSON, JSONP),支持CRUD操作(创建,读取,更新和删除操作),并支持排序,分页,过滤,分组和 ...
- QTime中currentTime()的使用方法
QTime中currentTime()的使用方法 QTime是Qt中一个处理时间的类,其成员函数currentTime()是最经常用到函数,下面举例说明该成员函数如何使用. 1. 包含头文件 #inc ...
- ios-制作静态.a文件
一.制作静态库文件 /*静态库制作*/ // MakeA.h -(NSString*)testA; // MakeA.m -(NSString*)testA{ return @"静态库测试成 ...
- linux环境变量入门
一.概要 本文用java环境变量配置这个案例来介绍linux下的环境变量是怎样的,并且和windows系统下的环境变量语法进行了相应对比,适合初学者入门.在这之前,我已经将jdk.tomcat和ecl ...
- Java 编译打包命令
背景 编译 打包 解压 运行 参考 背景 我们有的时候总是要使用将自己写的工程编译成 class 文件,同时打包成 jar,虽然有各种工具可以帮助我们,但是毕竟掌握使用 java 本来的命令去做这些更 ...
- SQL注入(三)
邮给我一个密码 我们意识到虽然不能添加一条新的记录在members表中,但我们可以通过修改一个存在的记录, 这也获得了我们的证明是可行的. 从先前的步骤中,我们知道bob@example.com在系统 ...
- 电脑自动重启(Kernel-Power 41 (63) error)的一些解决办法
查看是否有两个声卡驱动,如果有,尝试关闭其中一个. 可能是内存的问题,用memtest测试.如果有多于一个内存条,仅使用其中的一个试试. 更改电源设置,使机器工作在低耗状态. 更新所有驱动,尤其是主板 ...
- minSdkVersion与targetSdkVersion
targetSdkVersion是Android提供向前兼容的主要依据,在应用的targetSdkVersion没有更新之前,系统不会应用最新的行为变化 比如设置了app的targetSdkVersi ...
- android中edittext被键盘挡住问题
最近开始新项目,做注册页时候由于ui布局问题,edittext被键盘挡住了. 在stackoverflow上找了一遍,有提到在对应activity中设置windowSoftInputMode, 例如: ...
- EF CodeFirst使用MySql
1.引入包 EntityFramework MySql.Data.Entity 2.配置文件 web.config <connectionStrings> <add name=&qu ...