BOURNE SHELL | BASH | |
命令提示方式 | echo | read -p |
属性操作命令 | 只有readonly | readonly declare typeset |
登陆文件 | .profile | .bash_profile或.bash_login |
环境文件 | 没有提供 | .bashrc |
环境变量导入方式 | name=value;export name | export name=value |
对于PS1的支持 | 选项很少 | 选项很多 |
对PS3和PS4的支持 | 不提供 | 提供,对select和shell(set -x)的支持 |
包含其它shell的方式 | .号运行不支持source | 两种方式都支持 |
对数值计算的支持 | 使用expr命令 | 增加let内置命令,增加(())双括号数值计算方式, |
对位置参数的支持 | 不支持${10}以上的位置参数,要读取第十个以后的参数要使用shift命令 | 支持所有的位置参数 |
函数定义方式 | 没有function关键字,函数定义必须后面跟括号。 | 兼容bourne shll的方式,又增加function关键字,使用function方式后面不用括号 |
条件判断 | 单层括号[],相当于test condition | 使用增强的双层括号[[]],这使得比较方式与其它流行的语言比较方式十分相似,容易学习。 |
其它扩充 | history命令 内置命令行编辑器,缺省为emacs 别名功能 文件名补齐功能 支持数组 增加buildin和command命令 增加enable命令 增加local命令 提供help命令 增加select命令 增加shopt命令 |