Eshell是使用Emacs Lisp编写的一种方便的命令行解释器程序,其目的是在提供对Lisp代码的无缝支持的同时具有高度的可移植性。它提供了大量日常功能,包括自动完成,历史记录管理,作业控制机制等等。 Eshell附带的脚本结构非常简单,可以正确完成工作。如果您是Lisp程序员或前卫的Emacs爱好者,那么Eshell可以成为您理想的Linux Shell。
Eshell的功能
Eshell不是一个独立的终端模拟器,而是一个日常shell,可以使用Emacs的功能与您的计算机进行通信。
到目前为止,它不直接支持交互���程序,因此您需要在单独的ANSI术语实例中调用它们。
Eshell对历史记录修改和交互的默认支持非常好,其语法在某种程度上类似于Bash和Zsh。
用户可以通过修改eshell-prompt-function变量来自定义Eshell,该变量定义了提示在系统中的行为。
11、rc Shellrc shell是经典的命令行解释器,与Bourne shell极为相似。但是,与Bourne Shell相比,它具有某种简单的结构。这是因为rc使用类似C的控制结构,而不是sh使用类似ALGOL的语法。 Tom Duff是该Unix Shell的主要开发人员,以其高质量的程序设计和出色的解决问题能力而闻名。
rc Shell的功能
rc使用if not scripting结构而不是vanilla else,并提供与在Bourne shell中使用的for循环相同的for循环。
尽管rc的输入规则很弱,但是它结合了强大的机制来操纵变量。
rc相当轻巧,因此比许多传统的Linux开源shell更快。
它具有对异常处理,搜索和替换机制,模式匹配等的出色支持。
12、Scsh ShellScheme Shell或Scsh是可移植的命令行Shell,可用于Linux和BSD之外的各种操作系统。它与Scheme编程接口分层放置,旨在轻松编写真实的Unix程序。它可以用来为应用程序和标准操作系统程序编写高效的脚本。它带有对管道的内置支持,输入输出重定向,符号链接,BSD套接字,正则表达式模式以及许多其他令人兴奋的功能。
[linuxidc@linux:~/www.linuxidc.com]$ sudo apt-get install mit-scheme
Scsh Shell的功能
Scheme Shell对日常脚本构造(例如列表,字符和字符串)具有出色的库支持。
在操作正则表达式时,用户可以选择使用Scheme正则表达式,域特定语言(DSL)或少量语言。
这个开源shell提供的网络支持确实是一流的,并且与许多应用程序相比,速度更快。
支持伪终端,awk之类的脚本,宏,智能搜索以及更多替换功能。
13、Xonsh ShellXonsh是受Python脚本语言支持的现代Linux shell。如果您想知道是否可以将Python解释器用作Unix shell,那么Xonsh可以让您做到这一点。该语言已作为Python 3.5+的超集构建,并提供了您在Bash和iPython中经常使用的大量shell原语。
Xonsh Shell的功能
Xonsh被开发为一种健全的语言,它对包括Linux,Mac OSX和Windows在内的一系列操作系统提供了原生支持。
此shell的制表符完成功能非常出色,还支持手册页解析中的完成。
熟悉Python的用户会发现Xonsh非常适合,因为其语法与Python非常相似。
它带有一个庞大的库,可以立即提供许多日常原语。
14、Oh ShellOh,这是现代Linux用户的绝佳开源Shell程序。尽管乍看之下它看上去与传统的Unix shell非常相似,但是在编程方面却与之不同。 Oh是使用Golang开发的,可提供高质量的原生并发支持。但是,Oh的核心是Scheme编程语言的一个经过极端修改的实例。它还对代码,数据,管道和通道使用相同的语法-允许最终用户在其脚本中互换使用它们。
Oh Shell的功能
Shell本身是使用Go构建的,但是编程结构是Scheme编程语言的方言。
在支持并发方面,哦是最好的Unix shell之一。
它把管道旁边的通道作为一流的值来处理,并具有简洁的语法结构。
哦,允许公共和私人成员,并将它们用作基于原型的对象系统的基础。
15、Elvish shell