索引及切片 [root@linux-server ~]# a=12345678 [root@linux-server ~]# echo ${a:5} #从左往右第5位开始截取,留下后三位 678 [root@linux-server ~]# echo ${a:3:4} #从第3位开始截取,留下后四位的,剩下的都不要。 4567 [root@linux-server ~]# echo ${a:2:-1} #从左往右第2位开始截取,从右往左截取第一位 34567 [root@linux-server ~]# echo ${a:2:-2} 3456
参数解释: 用冒号截取:echo $a: : : 从哪里截取留那里。
脚本案例: [root@localhost ~]# vim test11.sh #!/usr/bin/bash read -s -p "请输入您的11位手机号 " phone echo echo "你的手机号是 $phone" echo "手机号后四位是 ${phone:7}"
匹配截取 语法: {变量##关键词} 若变量内容从头开始的数据符合『关键词』,则将符合的最长数据切除 {变量%%关键词} 若变量内容从尾向前的数据符合『关键词』,则将符合的最长数据切除
参数解释: *:表示全部字符。 %:最短尾匹配; %%:最大尾匹配 %:从右往左 #:从左往右
实战 [root@linux-server ~]# url=www.sina.com.cn [root@linux-server ~]# echo ${#url} #获取变量的长度 15 [root@linux-server ~]# echo ${url} #正常显示变量 www.sina.com.cn