【ZSH 系列教程】 序
文章目录
【注】本文最后更新于 November 8, 2020,文中内容可能已经过时。
为什么 zsh 教程这么少!
一直想写点什么来介绍 zsh。国内搜 zsh 教程清一色都是教你怎么配置 OMZ 的,让人无语……
zsh 非常强大,然而很多人只是单纯把它当成 bash with many plugins 用,在写 zsh 脚本时都是当成 bash 来写的。这实在是暴殄天物,而且带来了不少问题:
- 首先牢记:zsh 不兼容 bash!!! 很多人都误以为 zsh 兼容 bash,这是不正确的,它们只是继承了同一套语法,然而各自都在其基础上进行了不同程度的扩展。把 zsh 当成 bash 来写,大概率就会踩坑然后抱怨 zsh 辣鸡。
- 作为一个注重交互式的 shell,zsh 引入了大量方便的功能以便减少对外部命令的依赖。而当成 bash 来写,你写出的 zsh 插件会比 zsh 慢数倍甚至数十倍。
- zsh 解决了 bash 中的不少坑点,比如默认不进行 Shell Word Splitting。当成 bash 来写,你的代码不仅坑多,行数也多
考虑到系统化的长篇教程已经有 zshguide 了,我决定写一系列短篇教程,针对 ZSH 的某一方面进行全面的介绍。
要说最全面的教程,那肯定是 ZSH 的文档了(虽然我常常吐槽它晦涩难懂)。事实上我也确实打算照着 ZSH 文档来写,甚至本来打算起名为“ZSH 文档翻译”的,但是起名翻译的话感觉就给我的文章套上了一个框框,发挥起来不是很自由。因此还是决定叫教程,这样我觉得有用的地方就可以多提一下,没用的地方就不讲了。