1 bash与dash


从Ubuntu 6.10开始,默认使用dash(theDebian Almquist Shell)而不是bash(the GNUBourne-Again Shell).

但Login Shell还是bash. 原因是dash更快、更高效,而且它符合POSIX规范。Ubuntu在启动的时候会运行很多shell脚本,使用dash可以加快启动速度。

1.1 什么是bash ?


Bash(GNU Bourne-Again Shell)是许多Linux平台的内定Shell,事实上,还有许多传统UNIX上用的Shell,像tcsh、csh、ash、bsh、ksh等等,Shell Script大致都类同,当您学会一种Shell以后,其它的Shell会很快就上手,大多数的时候,一个Shell Script通常可以在很多种Shell上使用

1.2 什么是dash ?


dash is the standard command interpreter for the system. The current

version of dash is in the process of being changed to conform with the

POSIX 1003.2 and 1003.2a specifications for the shell.

2 切换bash和dash


2.1 查看与使用


先用命令ls -l /bin/sh看看

/bin/sh -> dash

默认sh为dash

我们会发现Ubuntu默认采用的是 dash

2.2 切换sh为bash


如果要修改默认的sh,可以采用命令

sudo dpkg-reconfigure dash

修改默认sh为bash

然后选择

修改默认sh为bash

成功后再执行

ll /bin/sh

结果是: /bin/sh -> bash

默认是修改为bash

修改成功!

2.3 切换sh为dash


当然我们也可以使用

sudo dpkg-reconfigure dash

把sh修改回去

3 链接


Dash与Bash的语法区别

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐