在shell脚本中使用函数的返回值

#!/bin/bash -
function mytest()
{
    echo "arg1 = $1"
    if [ $1 = "1" ] ;then
        return 1
    else
        return 0
    fi
}
if mytest 2; then
        echo "aaaaaaaaaa"
fi

  执行结果:

稍微改一下

#!/bin/bash -
function mytest()
{
  echo "arg1 = $1"
  if [ $1 = "1" ] ;then
    return 1
  else
    return 0
  fi
}
if mytest 1; then
  echo "aaaaaaaaaa"
fi

---------------------------------------------------------------------------

shell 中定义的变量是全局的,函数上面定义的变量在函数内部仍然是可见的

#!/bin/bash -  

g_var=
function mytest2()
{
    echo "mytest2"
    echo "args $1"
    g_var=$1  

    return 0
}  

mytest2 1
echo "return $?"  

echo
echo "g_var=$g_var"

  

时间: 2024-11-01 01:00:13

在shell脚本中使用函数的返回值的相关文章

Shell脚本中的函数、数组

Shell脚本中的函数 Shell脚本中的数组 原文地址:http://blog.51cto.com/13515599/2107416

shell脚本中的函数,shell中的数组,shell项目-告警系统

shell脚本中的函数 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式: function f_name() {command }函数必须要放在最前面,function可以省略直接写函数名 示列1,打印shell的参数 [[email protected] shell]# cat fun1.sh #!/bin/bash function inp(){ echo "the first par is $1" echo

在shell脚本中使用函数

转载请标明:http://www.cnblogs.com/winifred-tang94/ 对于在脚本中重复使用的功能模块,可以封装成为函数. shell脚本中函数的定义可以使用如下两种方式: a. 函数名() { ······· } b. function 函数名() { ·········· } eg. 结果为: 值得注意的是,如果判断相等哪里想用test指令的话,应该使用如下的格式:

关于PHP中eval函数的返回值

关于eval 的概念就是把字符串作为PHP代码执行.但是关于其返回值,有时候容易出错. 如下面定义一个函数 function get_func_type(){ return array(1=>'字符串处理','2'=>'数组处理'); } 你能正确说出例1,例2,例3的执行结果吗? 例1 $p=eval('get_func_type();'); trace($p); 例2 $p=eval('return get_func_type();'); trace($p); 例3 eval('$p=ge

HashMap中put函数的返回值

put函数返回值是键值对后面的那个value值 今天写程序看到 statue=hashmap.put(x,y); 我一开始以为返回值是1或者0 后来仔细看一下api文档原来不是如此.. 不知道设计者的意图是什么??? public V put(K key, V value) Associates the specified value with the specified key in this map. If the map previously contained a mapping for

013_go语言中的函数多返回值

代码演示 package main import "fmt" func vals() (int, int) { return 3, 7 } func main() { a, b := vals() fmt.Println(a) fmt.Println(b) _, c := vals() fmt.Println(c) } 代码运行结果 3 7 7 代码解读: go语言的函数内建支持多返回值,例如可以同时返回一个函数的结果和错误信息 (int,int)标志着这个函数返回两个int类型的返回

Mybatis调用Oracle中的函数有返回值

本身这个项目后台是用SSM框架,试了网上好多种有返回值的方法返回都是空; 下面是我调用方法: 这是我的函数 我在Mybatis的写法是: SELECT DEAL_EBOND_ICODE_DATA(#{iCode,jdbcType=VARCHAR}) AS A from dual 在DAO层 这种写法可以直接获取返回值,而且和其他一般的方法没什么区别! 原文地址:https://www.cnblogs.com/zhangqb/p/11137409.html

shell脚本中的循环

常用到的循环有for循环和while循环. for循环 [[email protected] sbin]# cat for.sh #! /bin/bash for i in `seq 1 5`; do echo $i done 脚本中的 seq 1 5 表示从1到5的一个序列.你可以直接运行这个命令试下.脚本执行结果为: [[email protected] sbin]# sh for.sh 1 2 3 4 5 通过这个脚本就可以看到for循环的基本结构: for 变量名 in 循环的条件: d

关于 Shell中函数的返回值 问题

# !/bin/sh sum() { echo $(($1+$2)) return $(($1-$2)) } sum $1 $2 c=$(sum $1 $2) echo $? echo $c 执行命令:./bashTest 11 1 运行结果是: 12 -- sum $1 $2的结果 10 -- echo $?的结果,因为return的值为10 12 --  echo $c的结果,值为12,所以c并不会被附上return的值,echo $c时调用了sum函数,所以打印了12 我们对shell中的