我尝试在 bash 中减去 dot
( .
) 之前的第一个字符串。
例如:
1.2.3 -> 1
11.4.1 -> 11
我使用了基于 docs 的以下命令:
s=4.5.0
echo "${s%.*}"
但它输出
4.5
而不是 4
。我不明白。这是为什么?
最佳答案
您需要使用 %%
从末尾删除最长的匹配:
$ echo "${s%%.*}"
4
来自 the docs :
关于bash - 提取点前的子串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40738346/