Linux中Zshell优胜于Bash shell的几点


Zshell支持一种扩展的重定向语法,由 multios 选项控制(默认是打开的)。这样可以避免使用 tee 程序,例如,在通常的是 shell 里面需要这样来完成重定向到多处的任务。使用bash shell的管理员可能想仔细看看zshell或是zsh。由于它于bash相似,功能又有所加强,本文将探讨zsh优于bash shell的几点。

使用默认指令列模式bash shell)的管理员可能想仔细看看zshell或是zsh。由于它于bash相似,功能又有所加强,zsh在Linux社区获得了关注。那么zsh有什么不同之处呢?首先,zsh在感觉和功能上都和bash相似。但是一些增强功能让zsh变成一个有趣的选择。下面是一台Linux服务器上zsh和bash的数据形式的对比:

Zsh增强功能:标签完成和拼写错误修正

用过bash标签完成的管理员会发现zsh中的增加功能令人印象深刻。这些功能包括菜单中现有的自动完成命令选项,该菜单可以通过使用箭头键滚动。举例来说,键入以下命令将提供可能命令行标记的列表:

  1. $ ls -  
  2. 或是  
  3. $ rm - 

选择要取消的特定程序,程序列表就和取消命令一起可用了。

另一个功能在内置页面程序中,它提供到less命令的快捷方式。要访问它,输入:

  1. <filename 

这和在命令行上运行less文件名一样。

对笨拙的打字员来说,拼写错误修正功能可用了。例如,如果你输入了一条错误命令,zsh会提示修正:

  1. $ lls  
  2. zsh: 要将 'lls'修改为 'ls' [nyae]吗? 

要修改它,输入y,命令就更正为ls,接着命令就准备运行了。

其它选项也很实用。输入n拒绝命令修正,输入a中断命令,输入e跳转到命令行进行编辑。这个自动修正功能也能用于命令行标记和文件名,包括修改无效Git分支名称一类的机密事务。

开始使用zsh

为了快速地开始使用zsh,可利用Robby Russell收集的zsh主题、功能和工具,它们被预先打包成“Oh My Zsh”。

  1. $ wget --no-check-certificate https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh 

手动的zsh安装指令也可用,需要用户克隆Git repo并复制在.zshrc的草稿模板中。

“Oh My Zsh”知识库包含一个主题和功能集合用于现有zsh环境的建立和改变。它也能和卸载脚本一起用来简化移除:

  1. $ uninstall_oh_my_zsh 

与zsh shell一起供给的还有一些很好的文档和zsh参考卡。GitHub等网站上的在线资源是.zshrc文件的例子,它相当于zsh版的.bashrc文件,这些资源同时也提供如何定制zsh的示例或是示范加强命令行经验的炫酷技巧。

一些zsh功能可和bash一起用,但在bash上设置、配置更加复杂,这也解释了为什么人们有多页.bashrc文件。如果是Shell的高度使用者,zsh会是吸引你用来取代bash的选择。它的使用快速且简单,而它的一些重要功能也让与shell的互动更有趣。

相关内容