20.16
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20.16相关的知识,希望对你有一定的参考价值。
20.16 shell脚本中的函数(上)函数,是一个子shell,代码段,定义完函数后可以引用它。
函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可。
functin f_name(){
command
}
函数必须要放在最前面
示例1
1 编写脚本
#!/bin/bash function inp() { echo $1 $2 $3 $0 $# } input 1 a 2
解释:
#!/bin/bash
function inp() { inp是参数的名字
echo $1 $2 $3 $0 $# $1第一个参数,$2第二个参数,$3第三个参数,$0文件的名字,$#统计参数
}
inp 1 a 2 输入函数名称inp直接调用函数,输出结果是 $1=a $2=a $3=2
2 执行输出
[[email protected] shell]# sh fun1.sh
1 a 2 fun1.sh 3
[[email protected] shell]# sh -x fun1.sh
+ inp 1 a 2
+ echo 1 a 2 fun1.sh 3
1 a 2 fun1.sh 3
编写第二种脚本
[[email protected] shell]# vim fun1.sh
#!/bin/bash
function inp() {
echo "1 $1"
echo "a $2"
echo "2 $3"
echo "fun1.sh $0"
echo "5 $#"
}
inp 1 a 2 3 adf
以上脚本,正确的输出结果应该是与echo里面除了$参数之外的参数对应,就是说 正常的话 应该输出是对应的.
执行过程
[[email protected] shell]# sh fun1.sh
1 1
a a
2 2
fun1.sh fun1.sh
5 5
另一种方法,输出$1
[[email protected] shell]# vim fun2.sh
#!/bin/bash
function inp() {
echo "1 $1"
echo "a $2"
echo "2 $3"
echo "fun1.sh $0"
echo "5 $#"
}
inp $1 $2 $3
输出变量
[[email protected] shell]# sh -x fun2.sh 1
+ inp 1
+ echo '1 1'
1 1
+ echo 'a '
a
+ echo '2 '
2
+ echo 'fun1.sh fun2.sh'
fun1.sh fun2.sh
+ echo '5 1'
5 1
[[email protected] shell]# sh -x fun2.sh 1 2
+ inp 1 2
+ echo '1 1'
1 1
+ echo 'a 2'
a 2
+ echo '2 '
2
+ echo 'fun1.sh fun2.sh'
fun1.sh fun2.sh
+ echo '5 2'
5 2
[[email protected] shell]# sh -x fun2.sh 1 2 3
+ inp 1 2 3
+ echo '1 1'
1 1
+ echo 'a 2'
a 2
+ echo '2 3'
2 3
+ echo 'fun1.sh fun2.sh'
fun1.sh fun2.sh
+ echo '5 3'
5 3
以上是关于20.16的主要内容,如果未能解决你的问题,请参考以下文章
20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求
20.16 20.17shell中的函数(上下);20.18 shell中的数组;20.19 告警系统需求分析
kubernetes 二进制安装(v1.20.16)验证 master 部署
20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求