赞
踩
因为shell语言的数据类型比较单一,所以字符串非常常用
num=5
num='5'
num="5"
我们在定义变量的时候可以使用单引号、双引号或不用引号。单引号和双引号的区别是,单引号里的内容是什么样就是什么样,不能识别变量或转义字符
num="5"
num2='num is $num !'
echo $num2 # 输出: num is $num !
num2="num is $num !"
echo num2 #输出: num is 5 !
字符串的拼接无需任何运算符号,
需要注意两点:
num1=555
num2=666
num3=num1$num1','num2$num2
echo num3 # 输出: num1555,num2666
str="sss""aaaa""$vv"" ""cc" # 变量vv不存在
echo str # 输出: sssaaaa cc
str="sss""aaaa""$vv" "cc" # 报错,因为空白字符未用引号
语法:${字符串名:开始位置:长度}
str="hello,word!"
# 从第1个字符开始(下标从0开始),截取5个字符
echo ${str:1:5} # 输出:ello,
语法:${#字符串名}
str="hello,word!"
echo ${#srt} # 输出: 11
shell语言只支持一维数组,值用圆括号括起来,每个值之间用空格分开
arr=(a b c 1 2 3)
arr=(a b c 1 2 3)
# 只能取到第一个值
echo $arr # 输出:a
# 根据下标取值
echo ${arr[3]} # 输出:1
# 取所有值
echo ${arr[@]} # 输出: a b c 1 2 3
我们可以根据下标改变元素的值,若下标不存在则新增元素
arr=(a b c 1 2 3)
# 下标存在,赋值(改值)
arr[0]=A
echo ${arr[@]} # 输出: A b c 1 2 3
# 下标不存在,新增
arr[8]=G
echo ${arr[@]} 输出: A b c 1 2 3 G
数组长度跟字符串长度一样的查看方法
arr=(a b c 1 2 3)
# 查看数组长度
echo ${#arr[@]} # 输出: 6
# 查看某个元素的长度
echo ${#arr[1]} # 输出: 1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。