当前位置: 首页> 科技> 名企 > Unix\Linux 执行shell报错:“$‘\r‘: 未找到命令” 解决

Unix\Linux 执行shell报错:“$‘\r‘: 未找到命令” 解决

时间:2025/7/12 3:04:45来源:https://blog.csdn.net/ximaiyao1984/article/details/140230887 浏览次数:0次

linux执行脚本sh xxx.sh报错:$'xxx\r': 未找到命令

原因:shell脚本在Windows编写导致的换行问题: Windows 的换行符号为 CRLF(\r\n),而 Unix\Linux 为 LF(\n)。

缩写全称ASCII转义说明
CRCarriage Return\r回车
LFLinefeed\n换行,Unix\Linux 的换行符
CRLFCarriage Return & Linefeed\r\n回车并换行,Windows 的换行符

解决:

vim 转换为 Unix 换行

# 查看文件格式信息
$ file xxx.sh
xxx.sh: a /usr/bin/env bash\015 script, ASCII text executable, with CRLF line terminators#-----------------------------------------------
# 转换为 Unix 格式换行
$ vim xxx.sh
:set ff=unix
:wq
#-----------------------------------------------# 再次查看文件格式信息
$ file xxx.sh
xxx.sh: a /usr/bin/env bash script, ASCII text executable
关键字:Unix\Linux 执行shell报错:“$‘\r‘: 未找到命令” 解决

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: