我做了一些研究,我可以将字符串除以'。但是我唯一要替换的是第三个'。',而版本号实际上是可变的,那么我该如何进行替换/拆分?
version: 1.8.0.110
但是我想要的是这样的输出:
version: 1.8.0-110
使用sed
例如:
$ echo 'version: 1.8.0.110' | sed 's/\./-/3'
version: 1.8.0-110
解释:
sed s/search/replace/x
搜索一个字符串并替换第二个。x
确定要替换的事件-这里是第3个。通常g
用于x
表示所有事件。
这里我们希望替换点,.
但这是sed
该search
术语期望的正则表达式中的特殊字符。因此,我们backslashify的.
到\.
指定文字.
。
由于我们在sed
(此处为反斜杠\
)的参数中使用特殊字符,因此我们需要将整个参数放在单引号中''
。许多人在这里总是使用引号,以免在使用可能是shell特有的字符(例如space )时不会出现问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句