Bakit Binago ng Apple ang Default na Shell sa Zsh

Bakit Binago Ng Apple Ang Default Na Shell Sa Zsh



Ang Shell ay ang pangunahing programa na kasama ng isang operating system upang makipag-usap sa hardware at nagbibigay ng nais na paggana. Ang Shell ay isang command-line interface o kilala rin bilang terminal na nakakakuha ng mga tagubilin mula sa mga user bilang input at nagbibigay ng output nang naaayon. Available ang iba't ibang uri ng shell kabilang ang bash na ang sikat, C-shell (Csh) , at Z-shell (Zsh) . Ang mga shell na ito ay may maraming pagkakatulad ngunit naiiba sa bawat isa sa mga tuntunin ng pag-andar, hitsura, at higit sa lahat, lisensya.

Gumagamit ang Apple ng bash shell bilang default na shell sa macOS ngunit binago ito kamakailan sa zsh . Para sa maraming mga gumagamit ng Mac, ito ay hindi inaasahan. Ano ang ginawa ng Apple sa hakbang na ito, at ano ang mga pangunahing alalahanin sa likod ng hakbang na ito? Ang artikulong ito ay magbibigay liwanag sa kamakailang desisyon ng Apple na ilipat ang default na shell mula sa bash patungo sa zsh . Magsimula tayo:

Pagbabago sa Kasunduan sa Lisensya ng GNU

Kilala ang Apple sa mga patakaran nito at pagsunod sa mga ito. Matagal nang ginagamit ng Apple ang bash bilang default na shell nito sa macOS. Halos hindi binabago ng Apple ang mga patakaran nito. Dahil sa mabilis na paglipat, medyo nag-aalinlangan ang mga gumagamit ng Mac. Ang kasalukuyang bersyon ng bash sa macOS X ay bersyon 3.2 habang ang pinakabagong bersyon ng bash ay 5. Hindi lang ma-update ng Apple ang bersyon ng bash dahil sa magkasalungat na isyu ng kasunduan sa lisensya sa pagitan ng GNU at Apple.







Ang mga tuntunin at kundisyon ng lisensya ng GPLv3 ay binago na hindi tugma sa mga patakaran ng Apple, at upang magamit ang pinakabagong bersyon ng bash na 5.0, kailangang sumang-ayon ang Apple sa lisensya ng GPLv3.



Ang GPLv3 ay gumawa ng ilang mga pagbabago sa kasunduan sa lisensya at ang Apple ay nag-aatubili na sumang-ayon dito dahil sa pagiging mahigpit para sa isang kumpanya tulad ng Apple. Samakatuwid, nagpasya ang Apple na ilipat ang default na shell nito mula sa bash patungo sa zsh mula sa macOS Catalina, Big Sur, at pasulong.







Bakit Zsh?

Ang pangunahing dahilan ng paglipat mula sa bash hanggang sa zsh ay ang zsh ay halos kapareho ng bash. Kaya, ang sinumang bago sa shell na ito ay hindi haharap sa anumang mga paghihirap.

Magagamit Ko Pa rin ba ang Bash sa macOS?

Oo, maaaring gamitin ang bash sa macOS, ngunit ito ay magiging bersyon 3.2 ng bash sa halip na bersyon 5. Bagama't luma na ang bash na bersyon 3.2.57, pinapayagan itong ipamahagi ng Apple sa ilalim ng lisensya ng GPLv2.



Pagkakaiba sa pagitan ng bash at zsh

Ang pangunahing pagkakaiba sa pagitan ng bash at zsh ay ang zsh ay lubos na napapasadya. Ang pagkumpleto ng command ay mas mahusay sa zsh. Sa kabilang banda, ang mga script na nakasulat sa bash ay mas maraming nalalaman dahil sa kanilang mas mahusay na compatibility. Dahil sa pagkakaiba sa functionality na zsh script ay maaaring hindi gumana sa bash environment.

Pangwakas na Kaisipan

Ang kamakailang desisyon ng Apple na abandunahin ang Borne Again Shell (bash) mula sa macOS ay isang mahiwagang desisyon na ginawa pagkatapos ng pagbabago ng kasunduan sa lisensya ng GNU. Ayon sa Apple, ang mga bagong tuntunin ay ang mga kundisyon ng GPLv3 ay mahigpit at mahirap para sa Apple na sumunod sa mga ito. Samakatuwid, ang Apple ay hindi na nagpapatuloy sa bash at lumilipat sa zsh. Ang zsh ay medyo katulad ng bash at lubos na nako-customize. Ngunit ang mga gumagamit ng Mac na interesado pa rin sa paggamit ng bash ay maaaring lumipat sa bash, ngunit hindi nila magagamit ang pinakabagong bersyon ng bash.