苹果为何用zsh取代bash , 成为macOS Catalina的默认shell?
在 WWDC 2019 期间 , 苹果隆重介绍了 macOS 的下一个重大版本 Catalina。不过对开发者和高级用户来说 , macOS Catalina 还有一个重大的变化 —— 因为 zsh 已经取代 bash , 成为了新版操作系统中的默认 shell。为帮助用户顺利过渡 , bash 并不会立即从 macOS Catalina 中消失 , 但大家最好尽快习惯这一变化 。
【zsh,z是整数还是正整数】至于作出这一决定的原因 , 猜测与 GPLv3 协议有关 。尽管苹果已经获得基于 GPLv2 许可协议的 bash 3.2 版本 , 但新版已经基于 GPLv3 协议 。苹果一直没有在 macOS 中使用 GPLv3 软件包 。因为像苹果这样自签发的企业 , 会在代码审核上更加严格 , 且其中包含了明确的专利授权 。即便许多 Mac 开发者已经开始使用像 Fish 这样的更加现代化的 shell , 但 zsh 和 Bourne shell(sh)与大多数 bash 更加兼容 。