Shell 基础知识 02 字符串与数组


字符串

字符串可以用单引号,双引号(推荐使用)括起来,也可以不用引号

单引号

无法输出变量,无法输出转义字符的单引号,不推荐使用

双引号

name="123"
str="my name is \"$name\"! \n"
echo -e $str

可以使用变量和转义字符,推荐使用

字符串拼接

name="123"
greeting="hello, "$name"!"
echo $greeting

字符串长度

str="abcde"
echo ${#str}

提取子字符串

str="abcde"
eco ${str:1:3} # 输出 bcd
  1. 第一个索引为 0
  2. 索引区间左右皆闭

查找子字符串

string="I am a good person"
echo `expr index "$string" io`

查找字符 io 出现的第一个位置

数组

bash 只支持一维数组。

数组定义

  1. 数组的初始化
arr_1=(val_1, val_2, val3)
arr_2=(
    val_1
    val_2
    val_3
)
  1. 数组单个元素赋值
arr_1[0]=val_0

数组读取

val_0=${arr_1[0]}

使用@可以获取数组中所有的元素

echo ${arr_1[@]}

数组长度

# 获取数组长度
length=${#arr_1[@]}
# 获取单个元素长度
length=${#arr_1[0]}

文章作者: 一汪白水
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 一汪白水 !
  目录