1. 截取
| 语法格式 | 说明 |
| ${string: start :length} | 从 string 字符串的左边第 start 个字符开始,向右截取 length 个字符。 |
| ${string: start} | 从 string 字符串的左边第 start 个字符开始截取,直到最后。 |
| ${string: 0-start :length} | 从 string 字符串的右边第 start 个字符开始,向右截取 length 个字符。 |
| ${string: 0-start} | 从 string 字符串的右边第 start 个字符开始截取,直到最后。 |
|
${string#*substr} | 从 string 字符串第一次出现 *substr 的位置开始,截取 *substr 右边的所有字符。 |
| ${string##*substr} | 从 string 字符串最后一次出现 *substr 的位置开始,截取 *substr 右边的所有字符。 |
| ${string%*substr} | 从 string 字符串第一次出现 *substr 的位置开始,截取 *substr 左边的所有字符。 |
| ${string%%*substr} | 从 string 字符串最后一次出现 *substr 的位置开始,截取 *substr 左边的所有字符。 |
2. 替换
| 语法格式 | 说明 |
| ${string/substring/replacement} | 使用$replacement, 来代替第一个匹配的$substring |
| ${string//substring/replacement} | 使用$replacement, 代替所有匹配的$substring |
| ${string/#substring/replacement} | 如果$string的前缀匹配$substring, 那么就用$replacement来代替匹配到的$substring |
| ${string/%substring/replacement} | 如果$string的后缀匹配$substring, 那么就用$replacement来代替匹配到的$substring |
3. 数组
Shell 数组用括号来表示,元素用"空格"符号分割开;
将字符串列表转变为数组,只需要在前面加(),例如:arr=(string) echo ${arr[@]}
本文介绍了Bash shell中如何进行字符串截取、替换以及数组的使用。讲解了数组的定义方式,以及如何将字符串转化为数组,并展示了输出数组元素的方法。
1191

被折叠的 条评论
为什么被折叠?



