bash是一个为GNU项目编写的Uixshell。它的名字是一系列缩写:Boure-AgaiSHell—这是关于Boureshell(sh)的一个双关语(Boureagai/boragai)。Boureshell是一个早期的重要shell,由StepheBoure在1978年前后编写,并同Versio7Uix一起发布。bash则在1987年由BriaFox创造。在1990年,ChetRamey成为了主要的维护者。
bash是大多数Liux系统以及MacOSXv10.4默认的shell,它能运行于大多数Uix风格的操作系统之上,甚至被移植到了MicrosoftWidows上的Cygwi系统中,以实现widows的POSIX虚拟接口。此外,它也被DJGPP项目移植到了MS-DOS上。
bash的命令语法是Boureshell命令语法的超集。数量庞大的Boureshell脚本大多不经修改即可以在bash中执行,只有那些引用了Boure特殊变量或使用了Boure的内置命令的脚本才需要修改。bash的命令语法很多来自Korshell(ksh)和Cshell(csh),例如命令行编辑,命令历史,目录栈,$RANDOM和$PPID变量,以及POSIX的命令置换语法:$(...)。作为一个交互式的shell,按下TAB键即可自动补全已部分输入的程序名,文件名,变量名等等。












评论