shell脚本 截取某位 字符串
时间: 2023-12-09 13:36:55 浏览: 134
以下是两种Shell脚本截取字符串的方法:
1. 截取指定位置的字符串
```shell
string="hello, world!"
echo ${string:7:5} # 输出:world
```
2. 截取指定字符串右边的字符
```shell
string="hello, world!"
echo ${string#*, } # 输出:world!
```
相关问题
shell脚本截取字符串
在 shell 脚本中截取字符串的方法有多种,常用的有以下几种:
1. 使用 `cut` 命令,格式为 `cut -c start-end string`。
2. 使用 `substring` 或 `substr` 函数,格式为 `${string:start:length}` 或 `$(echo $string | cut -c start-end)`。
3. 使用 `expr` 命令,格式为 `expr substr "$string" start length`。
例如:
字符串为 "abcdefg",截取第3到5个字符
```
string="abcdefg"
echo ${string:2:3}
# or
echo $(echo $string | cut -c 3-5)
# or
expr substr "$string" 3 3
```
都会输出 "cde"
shell脚本 %% 截取字符串
在shell脚本中,可以使用%%来截取字符串。具体来说,%%用于从字符串的末尾开始匹配并删除指定的模式。下面是一个示例:
假设有一个字符串str="Hello World!!",我们想要删除字符串末尾的两个感叹号。可以使用以下命令:
```shell
new_str=${str%%!!}
echo $new_str
```
输出结果为:
```
Hello World
```
在上面的例子中,${str%%!!}表示从字符串末尾开始匹配并删除最长的以"!!"结尾的部分。注意,%%是贪婪匹配,会删除尽可能多的匹配部分。
阅读全文