单引号
str='this is a string'
单引号字符串的限制:
- 单引号里的任何字符都会远洋输出,且变量是无效的
- 单引号字符串中不能出现单独一个的单引号(使用转义符也不行),但是可以成对出现,作为字符串拼接使用
双引号
name='MLF_TEST'
str="hello,i am \"$name\"!"
echo $str
双引号的优点:
- 双引号里可以有变量
- 双引号里可以出现转义字符
拼接字符串
#使用单引号拼接
name='MLF_TEST'
str='hello,'$name' !'
echo $str
#使用双引号拼接
name='MLF_TEST'
str="hello,"$name“ !"
echo $str
#或
name='MLF_TEST'
str="hello,${name} !"
echo $str
获取字符串长度
name='MLF_TEST'
echo ${#name}
提取子字符串
从第2个字符开始截取3个字符
name='MLF_TEST'
echo ${name:1:3}
查找子字符串
查找字符a或e的位置(哪个字母先出现就计算哪个)
str='there are many trees'
echo `expr index "${str}" ae`