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

背景

在自己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指向它,以获得更快的脚本执行速度。

最近更新

  1. TCP协议是安全的吗?

    2024-06-06 02:12:06       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-06 02:12:06       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-06 02:12:06       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-06 02:12:06       20 阅读

热门阅读

  1. k8s处于pending状态的原因有哪些

    2024-06-06 02:12:06       7 阅读
  2. pytest的断言

    2024-06-06 02:12:06       10 阅读
  3. Power BI前端设计:深度探索与实战技巧

    2024-06-06 02:12:06       12 阅读
  4. 55跳跃游戏

    2024-06-06 02:12:06       9 阅读
  5. webrtc vp8/9视频编解码介绍

    2024-06-06 02:12:06       8 阅读
  6. C++STL---list常见用法

    2024-06-06 02:12:06       9 阅读
  7. python中的预编译正则表达式

    2024-06-06 02:12:06       10 阅读
  8. 6_5 test

    6_5 test

    2024-06-06 02:12:06      9 阅读