供想了解的朋友掌握下。
Unix 的神秘之处就在于它的那些稀奇古怪的命令。比如在两个斜杠之间是否需要加一个点,或者连字符后是否需要加引号。要真正理解这些命令的话,就必须知道这些命令行是怎样被解释的。
Shell 程序(sh, ksh, csh, 或者其他变种) 读入并分析命令行,所以,命令行其实是对shell 程序的输入参数而已。
我们先来看一下读入的顺序:
1. 命令历史替换 (除了Bourne shell)
2. 分开单词,包括特殊字符
3. 更新命令历史(除了Bourne shell)
4. 解释单引号和双引号
5. 别名替换(除了Bourne shell)
6. 输入输出重定向 (< > 和 |)
7. 变量替换 (以 $开头的变量)
8. 命令替换 (命令s inside back quotes)
9. 文件名扩展 (file name wild cards)
你可以看到 Bourne shell 没有命令历史和别名替换的步骤,因为Bourne shell 不包括这些功能。


iamfriday 于 2006-12-23 19:49:16发表:
Bourne shell
是个神奇的东西~~貌似这个不是免费的……是Unix上的版本~~
常用的还是Bash多些……
还有,除了解释单引号和双引号,还要解释“\”~