Charles Fisher

撰写的内容

撰写的评论

学习 Bourne 系列 shell 脚本的用户需要了解其历史。

POSIX shell 有自己的标准,并且比 bash 提供的语言小得多。 该 shell 在使用 Debian dash 时是相关的,而在使用 Busybox shell 时则不那么相关。 不应详细研究 POSIX 和 ksh88 之前的标准。 请务必查阅正确的参考文献 - HP-UX 实际上为“man sh-posix”命令提供了 ksh88,这是完全错误的。 POSIX shell 不实现数组和 [[ 条件结构。

在 POSIX 之前是 Korn shell 的 '88 版本,该版本引入了 [[ - 许多人对 /bin/[ 程序及其与 /bin/test 的关系感到惊讶。 作为在 '93 版本中引入浮点数的一部分,Korn 还在弃用 -gt 运算符。

Bash 采用了许多 Korn 创新,但在几个主题(主要是协处理)上也走自己的路。

我发现 POSIX 标准以及 mksh(Android 的默认 shell)中的 Korn 功能是使用的最佳功能集,除非在其他 shell 之一中需要一些特定的东西。 mksh 比 bash 小得多,并且在从商业 UNIX 移植时遇到的问题更少。

对于 Windows 上的正常工作,我更喜欢 gnome-terminal(它实现了 VTE)。 这远胜于 putty,因为它具有选项卡,并且颜色再现更好。 我还可以轻松地在我的家用电脑上安装 Cygwin/X,然后将安装文件压缩并解压到我的工作系统上,它就这样运行,无需任何管理权限。 我尝试过其他 Cygwin 终端,但没有发现更好的。

我们还运行需要极高 vt220 仿真保真度的 VMS 应用程序。 我通常会为此工作使用 xterm,并且相关的 vttest 应用程序清楚地表明了大多数其他模拟器在更深奥的 DEC 命令序列中是多么的缺乏。 我很想在 xterm 中看到选项卡。

不幸的是,对于终端仿真来说,没有“一刀切”的方法,特别是如果您需要更大且正确的仿真命令集。

© . All rights reserved.