使用zsh分割语义版本号

时间:2019-07-23 12:19:31

标签: macos zsh semantic-versioning macos-catalina

随着macOS 10.15 Catalina的发布,默认外壳程序将从bash切换为zsh。在查看一些脚本和文档时,我意识到需要进行参数扩展更改。

问题bash regex to match semantic version number之后,我需要更新收集语义版本号的方法。

zsh中,如何使用参数扩展来分割语义版本号?

1 个答案:

答案 0 :(得分:0)

While using my previous answer as a template,我能够将代码转换为use zsh parameter expansion

product_version=$(sw_vers -productVersion)
os_vers=( ${(@s:.:)product_version} )
os_vers_major="${os_vers[1]}"
os_vers_minor="${os_vers[2]}"
os_vers_patch="${os_vers[3]}"
echo "${os_vers_major}.${os_vers_minor}.${os_vers_patch}"

Note that (by default) zsh arrays start at index 1 not 0