for mew歌词 shell_shell入门之----函数

shell 编程-函数

function (功能) 功能函数

完成特定功能的代码片段

函数必须先定义才能使用

优点:避免重复的代码

定义函数

调用函数

取消函数

函数传参

命名空间

local

返回值

return value

value不能超过0-255

shell 函数function

函数声明

function_name () {

list of commands

}

函数名 function_name,这就是你将使用它从其他地方在你的脚本调用。

取消函数

unset myfunc //取消函数

myfunc() //函数定义

{

echo “This is my first shell function”

}

myfunc //函数调用

产生以下执行结果

./test.sh

This is my first shell function

函数必须提前定义测试

[root@newrain fun]# cat fun05.sh

#!/bin/bash

fun () {

echo "hello"

}

fun

unset fun

fun

[root@newrain fun]# bash fun05.sh

hello

fun05.sh: line 8: fun: command not found

函数的返回值,返回的是函数体内最后一条命令是否成功的返回值

[root@newrain fun]# systemctl stop httpd

[root@newrain fun]# cat fun03.sh

#!/bin/bash

fun() {

systemctl status httpd &>/dev/null

systemctl status vsftpd &>/dev/null

}

fun

echo $?

[root@newrain fun]# systemctl stop vsftpd

[root@newrain fun]# bash fun03.sh

3

函数传参 在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 $¥n 的形式来获取参数的值,例如,$1表示第一个参 数,$2表示第二个参数

示例

[root@newrain fun]# cat fun06.sh

#!/bin/bash

if [ ! $# -eq 3 ];then

echo "Must Input Three number: " p1 p2 p3

exit

fi

fun() {

echo $[$1*$2*$3]

}

fun 1 2 3 这个时候只是传参到了脚本,并没有传到函数里面

[root@newrain fun]# bash fun06.sh 1 3 4 6

修改版:

[root@newrain fun]# cat fun06.sh

#!/bin/bash

if [ ! $# -eq 3 ];then

echo "Must Input Three number: " p1 p2 p3

exit fi

fun() {

echo $[$1*$2*$3]

}

fun $1 $2 $3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值