下面简单介绍一下Shell 编程。shell 中用户自定义函数。先举个小例子。
#!/bin/bash work() { ans=`expr $1 + $2` return $ans } genStr() { ans="hello bash" return $ans } work 3 4 echo $? genStr echo $? i=1 ((b=$i+1)) # 这里的 b=2 这样可以给i加1 echo $i for i in `ls` do if [ $i = 'hello.sh' ] then echo 'yes, exists' fi done
对上面这段代码,做如下说明。
1:shell 中的变量的定义和引用。定义的时候前面不用$,但是引用的时候在变量前要加上$。Shell中变量的赋值,=的左右是没有空格的,所以写shell的时候,空格不能随便加。
2:shell 中的函数,参数 => $0,$1,$2 就和命令行参数一样,在调用函数的时候,内部函数的返回值用$?来表示。调用函数的时候不需要加括号。只需要函数名,和参数。
3:最后一个是shell中算数运算的例子,要用两队括号,当然,算数运算还可以实用expr 工具,见第一个函数内。
4:shell 中的 for 循环。注意do .... done 的格式。
5:shell 中的if 语句。注意 if 后面的 [] ,是后面至少要有一个空格,并且 [] 内的表达式应应该是有一个空格的, $i = ‘hello.sh‘ 。接上面提到的 = 的用法,现在可以稍微总结一 下,= 两边没有空格表示 赋值运算, 两边又空格表示逻辑运算的相等。
6:注意shell中的 if ... then ... fi 的格式。
7:shell 中是可以没有; 这个符号的,python 也有这一特点,有没有都一样,建议不加。
时间: 2024-12-14 01:52:42