linux执行sh脚本报错:$’\r’: 未找到命令的完美解决方法(linux未找到命令是什么意思)不要告诉别人

随心笔谈2年前发布 admin
198 0 0

文章摘要

这篇文章介绍了在Ubuntu系统中使用从Windows复制粘贴的shell脚本时可能遇到的错误:执行脚本时出现‘$’r’: 未找到命令’的错误。原因在于,Windows和Linux系统对shell脚本的解释方式不同,尤其是对转义字符和命令解析方式的差异。文章提供了两种解决方法:一是使用dos2unix工具将脚本转换为Unix版本,二是使用NodePad++等文本编辑器进行转换。文章强调了在不同操作系统中处理shell脚本时需要关注工具和命令解析的差异性。关键词包括:dos2unix、shell脚本、Ubuntu、Linux、转换工具等。



命令直接从windows 复制过来导致的

解决:我是unbutu系统

安装dos2unixapt-get install dos2unix执行dos2unix命令转换文件格式dos2unix sh文件名

然后再执行sh文件就执行成功了

原因

在执行shell脚本时,出现‘$’\r’: 未找到命令’错误。基本是在Windows系统编写的脚本在linux服务器中执行了。

方法一:

1,使用dos2unix工具将脚本转换为unix版本的。

linux使用yum安装如下:

[root@localhost ~]# yum install dos2unix

ubuntu安装如下:

[root@localhost ~]# sudo apt-get install dos2unix

使用dos2unix对脚本进行转换:

[root@localhost ~]# dos2unix xxx.sh

转换后提示如下:

[root@localhost ~]# dos2unix deLog.sh
dos2unix: converting file deLog.sh to Unix format …

再次执行脚本即可。

2,使用nodepad++等工具进行转换。

使用方法:在右下角有转为 Unix (LF)的选项进行转换后保存即可。

到此这篇关于linux执行sh脚本报错:$’\r’: 未找到命令的完美解决方法的文章就介绍到这了,更多相关linux执行sh脚本报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:Linux bash:https://www.jb51.net/article/xxx:无法执行二进制文件报错解决Linux常用命令“ll”失效或命令未找到的问题

© 版权声明

相关文章