shell自定义函数执行顺序

基础方法

#!/bin/bash
# 方法的执行顺序,以逗号分隔
sequence=step3,step1,step2

# 定义3个方法
step1()
{
echo "step1"
}
step2()
{
echo "step2"
}
step3()
{
echo "step3"
}

# 读取以逗号分隔的变量并存为列表
step_list=`echo ${sequence//,/ }`

# 逐行读取列表执行
echo -e "${step_list}" | while read line
do
	read -r step1 step2 step3 <<< $line
	${step1}
	${step2}
	${step3}
done

执行结果
在这里插入图片描述

进阶版本,函数存在传参,通过遍历执行

#!/bin/bash
# 方法的执行顺序,以逗号分隔
sequence=step3,step1,step2

# 定义3个方法
step1()
{
args1=$1
args2=$2
echo "$args1 $args2 step1"
}
step2()
{
args1=$1
args2=$2
echo "$args1 $args2 step2"
}
step3()
{
args1=$1
args2=$2
echo "$args1 $args2 step3"
}

# 读取以逗号分隔的变量并存为列表
step_list=`echo ${sequence//,/ }`

# 遍历列表和从字典取执行内容
for each_step in $step_list
do
	declare -A step_dict
	step_dict=([step1]="step1 step1 is" \
			   [step2]="step2 step2 is" \
			   [step3]="step3 step3 is")
	${step_dict[$each_step]}
done

执行结果
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Shell 中,可以通过定义函数来实现代码的重用。定义函数的语法如下: ``` function 函数名() { 命令1 命令2 ... } ``` 使用函数的语法: ``` 函数名 ``` ### 回答2: Shell是一种命令行解释器,也被称为操作系统的Shell程序。自定义函数是一种用户自己编写的子程序,为了方便程序员调用重复使用的代码段。在Shell中,自定义函数可以为用户提供将多个命令组合成一个单一命令的方法。本文将讨论在Shell定义和使用自定义函数的过程。 Shell定义函数定义的方式如下: ```bash function_name (){ statements } ``` 其中,“function_name”是函数的名称,“statements”是函数的语句。语句可以是任何Shell命令,包括其他函数调用和控制语句(如if语句或for循环)。自定义函数执行完后,返回一个退出状态码(用于检查函数是否成功执行)。 例如,以下是一个简单的Shell函数: ```bash print_hello(){ echo "Hello, World!" } ``` 在命令行中输入print_hello并按回车键,则会输出“Hello, World!”。 Shell函数可以在脚本或Shell会话中定义。要在脚本中定义函数,请将函数定义放在脚本的顶部。在Shell会话中定义函数,则可直接在Shell提示符下输入函数定义Shell会将函数定义存储在当前Shell会话中,以便随时调用。 Shell函数的使用方式如下: ```bash function_name parameter1 parameter2... ``` 其中,“function_name”是要调用的函数的名称,“parameter1 parameter2...”是传递给函数的参数。参数可以是任何字符串或变量,它们将被传递给函数的语句。 例如,假设我们定义以下Shell函数: ```bash add(){ sum=$(expr $1 + $2) echo "The sum of $1 and $2 is: $sum" } ``` 在命令行中输入“add 5 10”并按回车键,则会输出“The sum of 5 and 10 is: 15”。 总之,Shell函数提供了一种方便的方式将一系列命令组合成一个单一命令。函数可以在Shell脚本或会话中定义,并在需要时调用。自定义函数可以为Shell脚本编写提供很大的灵活性和可读性,有助于降低编写脚本的难度和减少重复代码。 ### 回答3: Shell定义函数是指用户自己编写的一些功能代码块,并且可以在Shell脚本中重复使用。 Shell中自定义函数定义格式为: ``` function 函数名() { 函数体 } ``` 其中,函数名为自己定义函数名称,函数体是这个函数中需要执行的命令语句块。 Shell定义函数可以在Shell脚本中重复调用,从而实现代码的复用。其调用格式为: ``` 函数名 参数1 参数2 … ``` 其中,参数可以是任意类型的变量。 例如,我们定义了如下一个函数: ``` function add() { res=$(($1 + $2)) echo $res } ``` 这个函数将两个参数相加,然后输出结果。我们可以通过调用这个函数,实现两个数相加的功能: ``` add 1 2 ``` 这调用将会输出3。 在实际开发中,Shell定义函数可以大大提高代码的复用率,从而提高开发效率。同时,自定义函数可以使Shell脚本更加模块化,每个函数专注于完成一项特定的任务,增加了程序的可维护性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值