Ubuntu下修改缺省dash shell为bash shell
Debian和Ubuntu下缺省使用的是shell是dash,而不是bash。从/bin/sh软连接的指向可以看出这点。
这是一个不同于bash的shell,它主要是为了执行脚本而出现,而不是交互,它速度更快,严格遵守POSIX标准,
但它并不支持所有的语法,可以看作是bash shell的一个子集。因此,运行bash shell程序时,经常报错。
修改sh指向bash有两种方法:
1、由于是子集,因此可以直接修改bin/sh软链接指向bash:
ln -sf /bin/bash /bin/sh
2、系统也提供了一个重新配置默认shell的界面,如下:
执行sudo dpkg-reconfigure dash,弹出如下dash配置界面
在该界面中选择no,系统把dash移除,/bin/sh自动指向bash,如下: