you never doubt youself,I belive!

shell 函数返回值 & 特殊字符含义

上一篇 / 下一篇  2011-03-13 22:03:43 / 个人分类:测试基础知识

1Shell函数返回值

      ·定义shell函数(define function

             [ function ] funname[()]

             {

                    action;

                    [return int;]

}

memo:1.也可以直接fun()定义2.返回参数,可以加return;如果不加,将以最后一条命令运行结果,作为返回值。

[实践]

#! /bin/sh

fSum 2,4;

function fSum()

{

      echo $1,$2

      return $(($1+$2));

}

fSum 5 7;

total=$(fSum 3 2);

echo $total,$?;

 

 

memo:

命令里面获得参数方法可以通过:$0…$n得到。$0代表函数本身。

$?系统变量:shell获得命令返回值,都需要通过$?获得

 

      ·echo

      ·全局变量:declare –I g_ret,在function的返回值存储在全局变量中。调用处在函数执行完后,使用就可以。

#! /bin/sh

declare –I g_ret=0

varCntGlobeVar()

{

      var=$1

      if[“$var” != “”]; then

      g_ret=${#var}

      fi

}

main()

{

      varCntGlobeVar “1234”

      printf “varCntGlobeVar’s ‘s return value is %d ” $g_ret

}

2shell特殊字符的含义

符号

含义

$

shell变量名的开始,如$var

$-

使用set及执行时传递给shell的标志位

$!

最有一个子进程的PID

$#

传递给shell script的参数个数

$*

传递给shell script的参数

$@

所有参数,个别的用双引号括起来

$?

上一个命令的返回代码

$0

当前shell的名字

$n

(n:1-)位置参数

$$

进程标示号(Process Identifier Number,PID

|

管道,讲标准输出转到下一个命令的标准输入

&

后台执行一个进程

>file

输出重定向

<file

输入重定向

>>file

输出重定向,追加(append)

`command`

命令切换,如filename=`basename /usr/local/bin/tcsh`

Memo: ls * |cpio –o > filename.txt


TAG:

 

评分:0

我来说两句

Open Toolbar