Bash或Zsh有什么区别,为什么要使用另一个?[重复]


23

因此,问题几乎说明了一切。我在Snow Leopard上,并且进行了大量Web开发,尤其是在大量使用控制台的Rails 3中。

我见过一些著名的博客等。他们提到Zsh是他们对Bash的偏爱,但我不知道这会带来什么变化。

谁能给我一个很好的比较,说明两者之间存在什么差异,什么会使一个人偏爱一个选项或另一个?



1
如果有帮助,2016年的文章:stackabuse.com/zsh-vs-bash
心教堂

这个问题再次成为有关,由于苹果切换到的zsh
阿马尔

Answers:


16

这是来自Zsh常见问题解答

2.5:与bash的相似之处

bash的Bourne-Again Shell是另一个增强的Bourne-like Shell;最明显的
与zsh的区别在于它不尝试模仿Korn Shell。由于两者
外壳正在积极开发中,过于具体可能不明智。 
这里。广泛地讲,bash更加关注标准兼容性(即POSIX)
更长,并且到目前为止避免了更为深刻的交互功能(可编程 
完成等)。

我都使用过它们,但是现在更喜欢Bash,因为我使用的机器默认情况下始终一致地bash。对我而言,符合标准的评论很重要,因为这意味着操作系统之间的一致性。

Zsh具有很好的自动完成功能,但是我一直在寻找不知道我想要什么的情况。那是几年前的事,所以从那以后可能会有所改善。

我发现set -o vi在Bash 中启用“ vi-mode”()使其比通常情况下好得多,因此我在.bashrc文件中立即进行了操作。

编写shell脚本时,我永远不会使用bash或zsh进行编程-我使用sh(/bin/sh)进行编程,因为它是最低的公分母,并且很少有兼容性问题。那只是一个老习惯,这使我很好。


2
一个区别是通配符的行为不同。例如,要查找名为“ vi”的文件的所有实例,可以将bash与command配合使用locate */vi。使用zsh,相同命令的结果为zsh: no matches found: */vi。要使搜索在zsh中工作,搜索查询必须用引号括起来locate "*/vi"
Pro Backup

但是您的两个示例都可以使用bash。
约翰·斯塔克
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.