0011-Shell字符串(最常用的数据类型)

字符串的定义可以用单引号,也可以双引号,也可以不用引号。

0001-单引号

str='this is a string'

单引号字符串的限制:

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量时无效的。
  • 单引号字符串中不能出现单独一个的单引号(对单引号使用转义符号也不行),但可成对出现,作为字符串拼接使用。

str='I am ''a ''good boy'#单引号里有两对单引号,不是双引号。
echo $str

运行结果:

I am a good boy

0010-双引号

my_name='cool'
str="Hello, my name is \"$my_name\"! \n"
echo -e $str

运行结果:

Hello, my name is "cool"!

双引号的优点:

  • 双引号里可以有变量
  • 双引号里可以出现转义字符

0011-拼接字符串

your_name="cool"
#使用双引号拼接
greeting="hello,"$your_name" !"
greeting_1="hello,${your_name} !"
echo $greeting $greeting_1
#使用单引号拼接
greeting_2='hello, '$your_name' !'
greeting_3='hello, ${your_name} !'
echo $greeting_2 $greeting_3

运行结果:

hello,cool ! hello,cool !
hello, cool ! hello, ${your_name} !

0100-获取字符串长度

${#variable_name} 获取长度.

String="abcd"
echo ${#String}

运行输出4.

0101-提取字符串

${variable_name:position:length} 提取字符串。

String="I am a good boy"
echo ${String:2:9}

运行结果:am a good

0110-查找子字符串

index “$variable_name” char 查找子字符
查找字符a或o的位置(哪个字符先出现就计算哪个)

string="I am a good boy"
echo `expr index "$string" ao`

运行结果:3

注意:以上脚本`是反引号,不是单引号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值