函数

Shell函数在实际工作中经常使用,因为有一些命令是需要反复调用的,如果每次都重复写一遍,代码量冗余,可以将这一些命令定义成一个函数,调用这个函数就可以重复使用这些命令。

函数的定义的基本格式

function 函数名(){undefined
命令序列
return x
}

定义函数时,function 可以省略,直接写函数名(){}
return 用来返回给系统一个值,可以用来调试脚本,比如执行到脚本的某一行时,返回一个值来标识脚本走到这一步了。
函数的简单应用

[root@localhost ~]# vim funsum.sh #!/bin/bash
#求总和和偶数和的脚本
read -p "请选择求总和还是偶数和,总和输入1偶数和输入2:" chose
totalsum(){read -p "请输入范围(1-?):" num
sum=0
for ((i=1;i<=$num;i++))
do
let sum+=$i
done
echo $sum
}oushusum(){ //定义函数
read -p "请输入范围(1-?):" num
sum=0
for ((i=1;i<=$num;i++))
do
if [[ i%2 -eq 0 ]];thenlet sum+=$i
fi
done
echo $sum
}case $chose in
1)totalsum //调用函数
;;
2)oushusum //调用函数
;;
*)echo "参数错误"
;;
esac

数组

数组的格式:数组名(元素1 元素2 元素3 …元素n)
数组的取值格式:数组名[索引]例如:{数组名[索引]} 例如:数组名[索引]例如:{a[0]} 表示取数组a当中的第一个值
数组的索引:!a[∗]索引从0开始数组的长度:{!a[*]} 索引从0开始 数组的长度:!a[∗]索引从0开始数组的长度:{#a[*]}

数组的经典案例冒泡排序

#!/bin/bash
#冒泡排序的脚本
#作者:lvbin
a=(30 10 3 40 11 60 7)
maopao(){for ((i=1;i<$((${#a[*]}));i++))
dofor ((j=0;j<$((${#a[*]}-$i));j++))donum1=${a[$j]}num2=${a[$j+1]}if [[ $num1 -gt $num2 ]];thenoo=$num1a[$j]=$num2a[$j+1]=$oofidone
done
echo ${a[*]}
}
maopao

shell 函数和数组相关推荐

  1. linux shell 字符串 数组,bash shell函数返回数组字符串

    #!/bin/bash # script:getselfvar.sh # 每个脚本中都在末尾追加了一段特殊的域名ip序列,需要将这段序列存放到数组变量中,供 # 脚本使用,例子中的ip和域名是处理过的 ...

  2. Shell 函数、数组与正则表达式

    防伪码:白日依山尽,黄河入海流. 5.1  函数 格式: func() { command } 示例 1: #!/bin/bash func() { echo "This is a func ...

  3. shell函数与数组(了解函数,递归函数运用,了解数组,创建基数和偶数数组,冒泡排序,调试命令)

    文章目录 shell函数 了解函数 函数定义 递归函数 举例子 shell数组 定义数组 数组包括的数据类型与数组操作 数组操作 举例(快速创建数组.奇数数组) 冒泡排序法 调试命令 set命令 ba ...

  4. shell中的函数shell中的数组告警系统需求分析

    2019独角兽企业重金招聘Python工程师标准>>> 20.16/20.17 shell中的函数 函数的概念 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用 ...

  5. Shell编程基础---函数、数组

    2019独角兽企业重金招聘Python工程师标准>>> 本文索引: shell中的函数 shell中的数组 告警系统需求分析 shell中的函数 shell作为一种编程语言,必然有函 ...

  6. Linux centosVMware shell中的函数、shell中的数组、

    一.shell中的函数 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式: function _name() { command ...

  7. shell中的函数、shell中的数组、 告警系统需求分析

    为什么80%的码农都做不了架构师?>>>    20.16/20.17 shell中的函数 shell中的函数 说明:函数就是子shell, 是一个代码段,定义完函数就可以引用它. ...

  8. Shell脚本(函数,shell中的数组)

    函数 函数就是把一段代码整理到一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式:function f_name(){ command } 函数必须放在最前面 ...

  9. shell变量、函数和数组以及字符串的截取

    一.变量 1.shell变量名 (1)可以由字母.数字.下划线等字符组成.但是第一个字符必须是字母或者下划线. (2)若果变量中包含下划线(_)则要特别注意,$project_svn_$date.ta ...

  10. linux shell脚本传数组参数,shell脚本----函数和数组

    目录 一.shell函数 1.简介 2.格式 3.函数调用 4.示例演示 5.递归函数 二.shell数组 1.数组 2.Shell 数组的定义 3.获取数组元素 4.元素切片,替换,删除 5.示例演 ...

最新文章

  1. VIL-100: 一个新的车道线检测数据集和基线模型(ICCV2021)
  2. 图像+预处理+数据增强+总结
  3. 「干货」谷歌大脑:元学习最新进展与挑战(40 PPT下载)
  4. linux mysql无符号整型_Mysql基础
  5. Android App开发——添加APP启动界面
  6. 深度探索C++ 对象模型(2)-类的对象的内存大小
  7. 5.13 卡尔曼滤波
  8. 小米手环无法模拟门卡_颜值与功能得到全面升级,小米手环4 NFC版上手体验
  9. openfilename 选择文件夹_这个软件能帮你1秒内搜索文件夹中的东西
  10. (241)IC验证工程师技能树
  11. Sonos拿1.3亿美金给员工发福利,中国厂商要拿什么拼?
  12. html中body呈现属性,HTML body 标签
  13. python3 x默认使用的编码_Python3编码问题(Python2请忽略)
  14. Solr 4.10.3 后台管理页面介绍
  15. java建设银行支付_基于JAVA的建设银行账目管理系统的设计
  16. task manager memory meaning
  17. rocketmq获取消息id_贞炸了!上线之后,消息收不到了!
  18. 6月30日 区块链新闻
  19. 以太网电缆作为“传输天线”,黑客可从气隙系统窃取数据
  20. DAGNN – 有向非循环图神经网络

热门文章

  1. BERT源码分析(二)
  2. 干货 | 斯坦福统计学习理论笔记:带你搞定「贼难」的理论基础
  3. 百面机器学习——svm基尼系数寻找最优划分
  4. 吴恩达深度学习——超参数调优
  5. 李宏毅机器学习——无监督学习(三)
  6. ThreadPool中变量ctl的分析
  7. Oracle开发艺术
  8. It’s Android Time
  9. 3.4 tensorflow2实现两总体样本尺度参数的秩检验法——python实战
  10. 309. 最佳买卖股票时机含冷冻期