Shell脚本编程(十二)

函数调用

在Shell程序中,常常把完成固定功能、且多次使用的一组命令(语句)封装在一个函数里,每当要使用该功能时只需调用该函数名即可。实际上,在Shell编程中,函数被看成“许多Shell命令整合成一个大的Shell命令”。

函数在调用前必须先定义,且在顺序上必须放在调用函数前面。

调用函数时可以使用参数传递,函数内使用return命令将运行结果返回给调用程序。

函数只在当前Shell中起作用,不能输出到子Shell中。

1、函数定义

函数定义的格式为:

格式1:

function_name(){

       命令

       ……

}

格式2:

function function_name(){

       命令

       ……

}

2、函数调用

1)无参数无返回值

若调用的函数无需返回值也无需传参,则像普通命令一样即可

示例:写一个打印hello world的子函数并调用

#!/bin/bash

hello(){

       echo"hello world"

}

hello #调用函数

2)有参数有返回值

若函数需要传递参数,也需要得到返回值,则有两种调用方式:

方式1:

value=`function_name $arg1 $arg2……`

方式2:

function_name $arg1 $arg2……

echo $?

示例:判断某个用户是否登录

#!/bin/bash

 

check_user(){

       user=`who| grep $1 | wc -l`

       if[ $user -eq 0 ]

       then

              return0

       else

              return1

       fi    

}

 

while true

do

       echo"Input a username"

       readUSER

       check_user$USER

       if[ $? -eq 0 ]

       then

              echo"THE USER OFFLINE"

       else

              echo"THE USER ONLINE"

       fi

done


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值