shell 字符串

单引号

单引号字符串中的变量是无效的;单引号中不能出现单一的单引号;

双引号

双引号中可以有变量; 双引号里可以出先转义字符;双引号中的单引号输出时维持单引号不变

示例 1:

#! /bin/bash
var="aaa 

bbb
ccc"
echo ${var}

执行结果:

$ ./demo.sh
aaa bbb ccc #变量中的换行被忽略,且只有一个空格

当字符串当成变量展开时,字符串中的多个空格或换行在展开时会只剩一个(方便for循环时候做处理)。

示例 2:

#! /bin/bash
var="aaa 

bbb
ccc"
echo "${var}"

执行结果:

$ ./demo.sh
aaa  
bbbb ccc

当字符串当成字符串被展开时,字符串保持原样不变。

获取字符串长度

string="abcdefg"
echo ${#string}

提取字符串

string="abcdefg"
#0123456
echo ${string:1:4} #输出 bcde
echo ${string:1}   #输出  bcdefg

 

查找字符串

string="abcdef"
echo `expr index "$string" ef` #输出5,因为 e 是第五个出现的

something to know

posted on 2019-06-15 23:18  rivsidn  阅读(7511)  评论(0编辑  收藏  举报

导航