Bash 提取子字符串
在 Bash 中可以使用多种方法从字符串中提取子串。子串就是包含在其父字符串中的子字符串。
基础语法定义
提取子字符串的命令是 Bash 的内置命令,相比于其他的字符串操作,给予了很大的便利。
语法:
${variable:offset:length}
注:
-variable
是目标字符串的变量名称。
-offset
位置,指定从何处开始提取字符串。
-length
偏移量,指定开始执行的字符范围。
应用示例
从字符串开头提取至指定字符结束
#!/bin/bash
echo "String: welcome to W3Cschool."
str="welcome to W3Cschool."
echo "Total characters in a String: ${#str} "
substr="${str:0:10}"
echo "Substring: $substr"
echo "Total characters in Substring: ${#substr} "
执行后得到以下结果:
String: welcome to W3Cschool.
Total characters in a String:21
Substring: welcome to
Total characters in Substring:10
从指定字符开始提取至结尾结束
#!/bin/bash
str="welcome to W3Cschool."
substr="${str:12}"
echo "$substr"
执行后得到以下结果:
3Cschool.