dash 和 bash

1.

Bash is the shell, or command language interpreter, that will appear in the GNU operating system. Bash is an sh-compatible shell that incorporates useful features from the Korn shell (ksh) and C shell (csh).

http://www.gnu.org/s/bash/

Dash(Debian Almquist shell) is a POSIX-compliant implementation of /bin/sh that aims to be as small as possible. It does this without sacrificing speed where possible. In fact, it is significantly faster than bash (the GNU Bourne-Again SHell) for most tasks.

2.

Ubuntu 的默认Shell是 Dash,

Bash 和 Dash两者语法是有区别的,详见

http://www.igigo.net/archives/169

例如

[ string1 = string2 ] 和 [ string1 == string2 ]

bash: 支持两者

1

2

3

4

5

6

igi@gentoo ~ $ [ 'a'= 'a'] && echo'equal'

equal

igi@gentoo ~ $ [ 'a'== 'a'] && echo'equal'

equal

igi@gentoo ~ $ echo$0

/bin/bash

dash: 只支持=

1

2

3

4

5

6

7

$ [ 'a'= 'a'] && echo'equal'

equal

$ [ 'a'== 'a'] && echo'equal'

[: 2: a: unexpected operator

$echo$0

dash

$

3.

如果Shell是从别的linux平台移植到Ubuntu, 应将 /bin/sh 改成bash

也有善意的提醒:何不去远方!昆明呀——赶一个花海;

dash 和 bash

相关文章:

你感兴趣的文章:

标签云: