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

背景

在自己Ubuntu环境执行sh脚本,报错"xxx.sh:/bin/bash^M:解释器错误: 没有那个文件或目录",查了下是Ubuntu系统默认的shell是dash:

修改配置过下,变成bash

解决方案

在终端执行:

bash 复制代码
sudo dpkg-reconfigure dash

然后弹框对话框选择No

然后就大功告成了。

知识补充

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

相关推荐
handler0119 分钟前
Linux 基本指令知识点(1)
linux·c++·笔记
历程里程碑22 分钟前
55 Linux epoll高效IO实战指南
java·linux·服务器·开发语言·前端·javascript·c++
用什么都重名22 分钟前
Ubuntu 24.04 开机无法进入图形界面:GDM 报「no session desktop files」的排查与修复
linux·运维·ubuntu
实心儿儿33 分钟前
C++ —— 进程控制 - 进程程序替换
linux·运维·服务器
Felven34 分钟前
盛科CTC8096 40G交换芯片常用命令
linux·40g·ctc8096·交换芯片
SilentSamsara38 分钟前
Service 与 Ingress:从 ClusterIP 到云厂商 ALB 的完整流量路径
linux·运维·服务器·微服务·kubernetes·k8s·运维开发
代码中介商39 分钟前
Makefile工程管理完全指南:从基础到实践
linux·脚本
北京秃子运维41 分钟前
Ubuntu 网卡恢复 / DHCP异常 / 远程连接异常处理记录(NetworkManager 场景)
ubuntu
生万千欢喜心1 小时前
linux 安装 Elasticsearch Kibana
linux·elasticsearch·jenkins
qq_348231851 小时前
Ubuntu 24.04 环境配置 AI自动化编程 gstack
linux·运维·人工智能·ubuntu