这一期作为大结局吧,再长的连续剧也有剧终的时候,今天主要介绍一下map与array分为以下几个章节:,今天小编就来聊一聊关于linux入门shell基本命令总结?接下来我们就一起去研究一下吧!
![linux入门shell基本命令总结(每天2分钟学习unixlinux系统shell编程)](http://img.studyofnet.com/upimg/919711966.jpg)
linux入门shell基本命令总结
这一期作为大结局吧,再长的连续剧也有剧终的时候,今天主要介绍一下map与array。分为以下几个章节:
- shell编程中array的声明定义
- shell编程中array的使用
- shell编程中array的例子
- shell编程中map的声明定义
- shell编程中map的使用
- shell编程中map的例子
声明定义语法如下:
arrayName=(v1 v2 v3 ......)
#或者下面的方法
arrayName[0]=123
arrayName[2]="123"
语法说明:
- 在shell中声明变量并赋值的=号两边不要有空格切记。
- 在shell中下标是从0开始的,一个数组中可以存数值也可以同时存字符串。
- 第一种声明方法记得元素中间有空格。
- 第一种声明方法记括号两边不能有空格。
#初始赋值上面说了。
#更新赋值用以下语法
数组名[索引]=新值
- ${arrayName[i]} #读取索引i位置的内容
- ${arrayName[*]} #获取数组所有元素
- ${#arrayName[*]} #获取数组的长度
- ${arrayName[@]} #获取数组所有元素
- ${arrayName[@]:1} #截取数组下标1到结束的元素,这个go的切片有点像
#!/bin/bash
arrayName[2]=123
arrayName[1]="123"
echo "${arrayName[2]}"
echo "${arrayName[1]}"
fileArray=($(ls)) #记得此处的括号
for (( i=0; i<${#fileArray[@]}; i ));do
echo "$i:${fileArray[i]}"
done
fileArray1=(${fileArray[@]:1:3})#记得此处的括号
for (( i=0; i<${#fileArray1[@]}; i ));do
echo "$i:${fileArray1[i]}"
done
#map的声明
declare -A map变量名
#语法如下:
nameMap[“001”]=“xiao ming”
nameMap[“002”]=“xiao lin”
nameMap[“002”]=“xiao guang”
- ${nameMap["key"]} #读取key的值
- ${!nameMap[@]} #输出所有的key
- ${nameMap[@]} #输出所有的值
就是获取遍历所有的key,然后根据key获取每一个值。例子中会有。
六、shell编程中map的例子
#!/bin/bash
declare -A nameMap
nameMap["001"]="xiao ming"
nameMap["002"]="xiao lin"
nameMap["003"]="xiao guang"
for k in ${!nameMap[@]};do
echo "$k:${nameMap["$k"]}"
done
好的,这一期就分享到这里了,shell编程全剧终。感谢大家一路的陪伴。后面要思考一下进行哪个教程了。感谢大家支持。
,