给定一个值为语义版本的 shell 变量,如何创建另一个值为(tuple 1 × 1000000) + (tuple 2 × 1000) + (tuple 3)的 shell 变量?
例如
$ FOO=1.2.3
$ BAR=#shell magic that, given ${FOO} returns `1002003`
# Shell-native string-manipulation? sed? ...?
我不清楚 POSIX 合规性与特定于 shell 的语法如何在这里发挥作用,但我认为首选不是特定于 bash 的解决方案。
更新:澄清一下:这并不像.
用零替换“”那么简单,这是我最初的想法。
例如,期望的输出1.12.30
is 1012030
, not 100120030
,这是.
-replacement 方法可能提供的。
如果答案可以是单行变量赋值,则奖励。