【Ubuntu】【Shell】执行sh脚本报错“xxx.sh:/bin/bash^M:解释器错误: 没有那个文件或目录“

阅读 9

2024-06-05

背景

在自己Ubuntu环境执行sh脚本,报错"xxx.sh:/bin/bash^M:解释器错误: 没有那个文件或目录",查了下是Ubuntu系统默认的shell是dash:
在这里插入图片描述
修改配置过下,变成bash

解决方案

在终端执行:

sudo dpkg-reconfigure dash

在这里插入图片描述

然后弹框对话框选择No
在这里插入图片描述
然后就大功告成了。
在这里插入图片描述

知识补充

Dash是本是bash的符号链接,鉴于bash太复杂,所以有人把bash从NetBSD移植到Linux并更名为dash(Debian Almquist Shell),并建议将/bin/sh指向它,以获得更快的脚本执行速度。

精彩评论(0)

0 0 举报