当前位置: 首页 > 工具软件 > Bash++ > 使用案例 >

dash与bash

皇甫文乐
2023-12-01

背景

平台Linux编译,可能会遇到脚本设置类型不同(如:芯片原厂bash而你的ubuntu默认是dash),导致使用和预期不一致的情况(如tftp烧写失败)。

dash与bash的区别

从Ubuntu 6.10开始,默认使用dash(theDebian Almquist Shell)而不是bash(the GNUBourne-Again Shell). 但Login Shell还是bash. 原因是dash更快、更高效,而且它符合POSIX规范。Ubuntu在启动的时候会运行很多shell脚本,使用dash可以加快启动速度。
————————————————
版权声明:本文为CSDN博主「Hansel」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hansel/article/details/9817129

shell配置错误的可能特征

运行一个成熟的脚本,出现如下错误

Syntax error: "(" unexpected

坑!!!

下面的语句不一定能表示shell的真实状态!

echo $SHELL
/bin/bash

看似是bash,实则不然!

查看shell真实配置

ls -al /bin/sh
lrwxrwxrwx 1 root root 4 8月  10  2018 /bin/sh -> dash

当前配置为dash

切换

设置为bash

sudo ln -fs /bin/bash /bin/sh

设置为dash

sudo ln -fs /bin/dash /bin/sh
 类似资料: