win10下写sh脚本出现^M字符的解决方法

本文解决了一个在Windows环境下使用Notepad++编写Shell脚本时出现的问题,即在Docker镜像中脚本运行失败,原因是脚本末尾存在^M字符。文章详细介绍了如何在Notepad++中将脚本格式从Windows格式转换为Unix格式,以及在Linux环境中使用dos2unix命令进行转换的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这两天做docker镜像,发现打包进镜像的sh脚本运行不起来,进入镜像后vi打开sh脚本,发现每一行后边都多了个^M字符,后来一查询原来是win10下使用notepad++写脚本,没有转换成正确的unix格式造成的,记录一下解决办法,在win下编写sh脚本时都要注意一下。

1、首先在编码项中,采用UTF-8-BOM编码

 

2、编辑->文档格式转换->转为Unix

 

 

 3、如果不想在win系统里转,也可以在linux服务上运行如下命令来进行转换

linux中sh脚本去掉^M的方法

dos2unix filename

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值