shell-函数、数组

函数格式
function f_name () {
    command
 }
#function 可省略掉
示例
#!/bin/bash
function sum(){
  s=$[$1+$2]
  echo $s
}
sum 1 2

##
shell中(())和$[]用于整数计算,想要将计算后的结果赋值给第3个变量,可以使用$(())和$[]实现。
c=$[$a+$b] 或者 c=$(($a+$b))
数组定义:a=(1 2 3 4 5 6 7)
查看数组中第n个元素: echo ${a[n-1]},数组从0开始
查看数组内所有元素:${a[*]}或${a[@]}。
查看数组内元素数量:${#a[*]}或${#a[@]}。
数组元素赋值:a[1]=10
数组元素删除:unset a[1]
数组分片:${a[@]:3:4} 从第3个开始,截取4个
${a[@]:0-3:2}从倒数第3个开始,截取两个 
数组替换:${a[@]/2/4} 把2改成4


[root@localhost sum]# a=(1 2 3 4 5 6 7)
[root@localhost sum]# echo ${a[1]}
2
[root@localhost sum]# echo ${a[0]}
1
[root@localhost sum]# echo ${a[*]}
1 2 3 4 5 6 7
[root@localhost sum]# echo ${a[@]}
1 2 3 4 5 6 7
[root@localhost sum]# echo ${#a[@]}
7
[root@localhost sum]# echo ${#a[*]}
7
[root@localhost sum]# a[7]=x
[root@localhost sum]# echo ${a[@]}
1 2 3 4 5 6 7 x
[root@localhost sum]# a[7]=xxx
[root@localhost sum]# echo ${a[@]}
1 2 3 4 5 6 7 xxx
[root@localhost sum]# a[9]=wyz
[root@localhost sum]# echo ${a[@]}
1 2 3 4 5 6 7 xxx wyz
[root@localhost sum]# echo ${a[8]}

[root@localhost sum]# echo ${a[9]}
wyz
[root@localhost sum]# echo ${b[@]}
1 2 3 4 5 6 7 8 9 10
[root@localhost sum]# echo ${b[@]:3:4}
4 5 6 7
[root@localhost sum]# echo ${b[@]:0-3:2}
8 9
[root@localhost sum]# echo ${b[@]/2/4}
1 4 3 4 5 6 7 8 9 10
[root@localhost sum]# 
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第 2 章 SHELL 基础知识2.1 shell脚本我们在上面简单介绍了一下什么是shell脚本,现在我们来进一...
    LiWei_9e4b阅读 5,493评论 0 0
  •   引用类型的值(对象)是引用类型的一个实例。   在 ECMAscript 中,引用类型是一种数据结构,用于将数...
    霜天晓阅读 4,849评论 0 1
  • 《Python从小白到大牛》已经上市! 程序中反复执行的代码可以封装到一个代码块中,这个代码块模仿了数学中的函数,...
    tony关东升阅读 4,959评论 0 1
  • 原文地址:C语言函数调用栈(一)C语言函数调用栈(二) 0 引言 程序的执行过程可看作连续的函数调用。当一个函数执...
    小猪啊呜阅读 10,304评论 1 19
  • 大家不要吐槽我写的乱,其实是简书的markdown编辑器有问题,看内容感觉写的很乱。我联系过简书的技术人员,连我理...
    Airmole阅读 4,518评论 0 4

友情链接更多精彩内容