电脑技术学习

对话 UNIX: Squirrel--可移植的 shell 和脚本语言

dn001

  要查找与包有关的选项列表以进行配置,需在命令行中输入 ./configure --help。

  为方便起见,Squirrel Shell 打包了 Perl Compatible Regular Expression (PCRE) 库的源代码,这些内容在程序中被大量使用。如果系统缺少 PCRE,打包后的代码可以使构建变得简单快捷。然而,如果系统已经有了 PCRE,那么可以通过指定 --with-pcre=system 选项来使用它。另一种方法是指定 --with-pcre=auto 以链接到更新的系统库或 Squirrel Shell 的副本。

  构建的结果是得到一个新的二进制文件,名为 squirrelsh。假设此文件被安装到 PATH 变量的某个目录中,比如 /usr/local/bin,那么输入 squirrelsh 以启动该 shell。在命令行提示符下,输入命令 printl(getenv("HOME")); 以输出主目录的路径:

$ squirrelsh 
> printl( getenv( "HOME" ) ); 
/home/strike 
> exit(); 

  Squirrel Shell 基于 Squirrel 编程语言(参见 参考资料 获得更多信息的链接)。该语言类似于 C++,并且提供了非常类似于 Python 和 Ruby 等面向对象脚本语言的特性。Squirrel Shell 纳入了 Squirrel 中的所有特性和数据类型,并添加了一些专门为常见 shell 脚本任务编写的新功能,比如复制文件和读取环境变量。

  尽管 Squirrel Shell 的语法对于日常的命令行使用过于繁杂 —echo $HOME 是和 Squirrel Shell 的 printl( "~") 具有等效功能的 Bash 命令 — 但是它拥有出色的脚本。您只需要编写一次,就可以到处运行,而不需要针对 Unix 和 Windows 分别编写。正如 Dinosaur 这样评价他的工作,“Squirrel Shell 主要是充当一个脚本翻译器。

标签: