bash脚本字符串操作命令
时间: 2024-09-06 18:01:29 浏览: 42
Bash Shell字符串操作小结
在Bash脚本中,进行字符串操作时可以使用多种命令和内置的字符串处理功能。这里列举几个常用的命令和操作方法:
1. `${变量名#匹配模式}`:从变量的开头删除匹配模式的最短匹配部分。
2. `${变量名##匹配模式}`:从变量的开头删除匹配模式的最长匹配部分。
3. `${变量名%匹配模式}`:从变量的结尾删除匹配模式的最短匹配部分。
4. `${变量名%%匹配模式}`:从变量的结尾删除匹配模式的最长匹配部分。
5. `${变量名/旧字符串/新字符串}`:将变量中第一次出现的旧字符串替换为新字符串。
6. `${变量名//旧字符串/新字符串}`:将变量中所有出现的旧字符串替换为新字符串。
7. `${变量名/旧字符串}`:如果变量以旧字符串开头,则删除开头部分。
8. `expr match "$变量" '正则表达式'`:使用正则表达式匹配字符串。
9. `expr "$变量" : '正则表达式'`:同样用于使用正则表达式匹配字符串,但通常返回匹配的部分。
例如,假设有一个变量`str`,其值为`/home/user/docs/report.txt`,以下是一些操作示例:
- 去除路径中的`/home/user/docs/`部分:
```bash
echo "${str##*/}"
```
输出将是`report.txt`。
- 替换文件扩展名为`.doc`:
```bash
echo "${str%.txt}.doc"
```
输出将是`/home/user/docs/report.doc`。
- 计算字符串长度:
```bash
expr length "$str"
```
会返回字符串`/home/user/docs/report.txt`的长度。
阅读全文