一、截取 格式:${变量:起始位置:长度} # 字符串phone=0123456789# 从 1 索引位置开始截取,截取到尾部,包含 1 位置echo ${phone:1}# 输出结果123456789# 从 1 索引位置开始截取 6 位,包含 1 位置echo ${phone:1:6}# 输出结果123456# 从 1 索引位置开始截取,截取到倒数第 2 位,不包含倒数第 2 位,这...
${a:1:1} #字符串截取,从0开始编号,第1个字符开始,截取1个 1. 2. 2、字符串替换 a="aabbcc" #字符串替换 echo ${a/"aa"/88} echo ${变量名/old/new} #替换1个 echo ${变量名//old/new} #替换所有 1. 2. 3. 4. 5. 3、字符串删除 echo ${a#} #掐头 echo ${a%} #去尾 a=`...
1.只替换第一个匹配结果:${变量名/old/new} 2.替换全部匹配结果:${变量名//old/new} 字符串掐头去尾: 1.从左向右,最短匹配删除:${变量名#*关键词} 2.从左向右,最长匹配删除:${变量名##*关键词} 3.从右向左,最短匹配删除:${变量名%关键词*} 4.从右向左,最长匹配删除:${变量名%%关键词*} ...
1.截取子字符集 echo ${filename:0:5}:提取最左边的5个字符,/dir1 echo ${filename:5:5}:提取第5个字符开始的连续5个字符,/dir2 2.替换字符 echo ${filename/dir/path}:将第一个dir替换成path,/path1/dir2/dir3/my.file.txt echo ${filename//dir/path}:将全部dir替换成path,/path1/path2/...
1)字符串拼接: str1="20""22"jiayou$me # 并排放在一起即可 str1=$name$url # 中间不能有空格 str2="$name $url" # 中间可以有空格 2)字符串截取: ${变量名:start:length} # index从0开始,含左,右为-1,length不写截到最后 ---掐头去尾: ...
cut -f1:截取第1个域 3、字符串截取前后部分内容 echo ${变量#开始字符串*结束字符串} #表示掐头,因为键盘上#在$($就是变量,这样便于记住)前面,一个表示最小匹配 echo ${变量%开始字符串r*结束字符串} # %表示去尾,因为键盘上%在$后面,一个表示最小匹配 ...
{MDIR#*/} == var/spool/mail/root echo ${MDIR##*/} ==root e:字符串去尾 从右向左,最短匹配删除 格式:${变量名%关键词*} 从右向左,最长匹配删除 格式:${变量名%%关键词*} %用来删除尾部,*通配 MDIR=“/var/spool/mail/root” echo ${MDIR%o*} == /var/spool/mail/ro echo ${MDIR%%o...
echo "${testname%.*}" #去尾部 echo '${testname#*.}' echo "${testname#*.}" #去头部 echo '${testname##*.}' echo "${testname##*.}" #取尾部 理解的简单方法: 记忆的方法为:# 是 去掉左边(键盘上#在 的右边),单一符号是最小匹配;两个符号是最大匹配...
字符串截取 常用方法:${变量名:起始位置:长度} ${}截取字符串时,起始位置是从0开始的 字符串替换 命令:${变量名/xx/yy} #只替换第一个匹配的结果 ${变量名//xx/yy} #替换全部匹配的结果 字符串掐头去尾 从左向右,最短匹配删除:${变量名#*关键词} ...
在Bash shell 中,每一个变量的值都是字符串,无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储。 当然,如果有必要,你也可以使用 Shell declare 关键字显式定义变量的类型,但在一般情况下没有这个需求,Shell 开发者在编写代码时自行注意值的类型即可。