shell的函数,for循环,字符串使用
下面这段代码包含了shell的函数,for循环,字符串使用
1、用 echo 可以设置函数返回值。如果在函数中用return返回值,这种情况下return返回的必须是数字,否则会报错。
2、在函数体中用echo语句,调用函数时用$(function_name param1 param2 ... )获取函数中所有echo连在一起的值。如下:
#!/bin/sh
#获取密码,密文是按一定规则处理的字符串
text="1k2l3k4l5d6h”
getPasswd(){
passwd=$1
value=""
for ((i=0;$i<=${#passwd};i=$i+2));
do
value=$value${passwd:$i:1}
done
echo $value
}
value=$(getPasswd $text)
echo $value
1、用 echo 可以设置函数返回值。如果在函数中用return返回值,这种情况下return返回的必须是数字,否则会报错。
function test0()
{
var=`echo abc`
return $var
}
res=$(test0)
echo $? #报错return: abc: numeric argument required
2、在函数体中用echo语句,调用函数时用$(function_name param1 param2 ... )获取函数中所有echo连在一起的值。如下:
function test1()
{
echo "str1" # str1
echo "str2" #str2
}
res=$(test1)
echo res #输出 str1 str2
因为$()中可以执行linux 命令,而这里$()中的function_name param1 param2可以当成一条命令来看。
0
赞
- 所属分类: linux
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
7、 openharmony
-
9、 golang