本篇文章将给大家介绍关于如何在shell脚本中创建和使用函数,下面我们来看具体的内容。

如何在Bash Shell脚本中使用函数-LMLPHP

在Shell脚本中创建第一个函数

在shell脚本中创建第一个函数,显示输出“Hello World!”。使用以下代码创建shell脚本“script.sh”。

# vim script.sh
登录后复制
登录后复制
登录后复制
登录后复制
#!/bin/bash

funHello(){
    echo "Hello World!";
}

# Call funHello from any where in script like below

funHello
登录后复制

执行脚本:

# sh script.sh
ouput:

Hello World!
登录后复制

如何将参数传递给shell脚本中的函数

向函数传递参数与从shell向命令传递参数类似。函数接收$1、$2…等的参数。使用以下代码创建shell脚本。

# vim script.sh
登录后复制
登录后复制
登录后复制
登录后复制
#!/bin/bash

funArguments(){
   echo "First Argument : $1"
   echo "Second Argument : $2"
   echo "Third Argument : $3"
   echo "Fourth Argument : $4"
}

# Call funArguments from any where in script using parameters like below

funArguments First 2 3.5 Last
登录后复制

执行脚本:

# sh script.sh
Ouput:

First Argument : First
Second Argument : 2
Third Argument : 3.5
Fourth Argument : Last
登录后复制

如何从Shell脚本中的函数接收返回值

有时我们还需要从函数返回值。使用以下示例从shell脚本中的函数获取返回值。

# vim script.sh
登录后复制
登录后复制
登录后复制
登录后复制
#!/bin/bash
funReturnValues(){
echo "5"
}
# Call funReturnValues from any where in script and get return values
values=$(funReturnValues)
echo "Return value is : $values"
登录后复制

执行脚本

# sh script.sh
Ouput:
5
登录后复制

如何在shell脚本中创建递归函数

调用自身的函数称为递归函数。下面的示例显示如何使用递归函数打印1到5位数字。

# vim script.sh
登录后复制
登录后复制
登录后复制
登录后复制
#!/bin/bash
funRecursive(){
val=$1
if [ $val -gt 5 ]
then
exit 0
else
echo $val
fi
val=$((val+1))
funRecursive $val     # Function calling itself here
}
# Call funRecursive from any where in script
funRecursive 1
登录后复制

执行脚本:

# sh script.sh
Ouput:

1
2
3
4
5
登录后复制

本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注Work网的Linux教程视频栏目!

以上就是如何在Bash Shell脚本中使用函数的详细内容,更多请关注Work网其它相关文章!

09-13 16:11