Linux文本中出现^M的解决办法

本文详细解析了在Windows与Linux系统间文本文件换行符的不同导致的问题,并提供了三种有效解决方案,包括vi命令模式替换、文件格式转换及生成新文件的方法。

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

问题来源

    在windows系统下新建了某文本,linux系统中使用命令读取该文本中的内容进行追加时出现^M标记

f0718d5cf795c2dac0d644c3fef4baf30a1.jpg

问题分析

    在DOS/Windows里,文本文件的换行符为\r\n,而在*nix系统里则为\n,所以DOS/Windows里编辑过的文本文件到了*nix里,每一行都多了个^M

问题处理

方法一

    在vi中命令模式下进行文本替换

    :%s/\r//g

方法二

    转化文件格式为Unix格式

# dos2unix $FILE_NAME

方法三

    转换并生成新的文件

    # cat $FILE_NAME | tr -s "\r\n" "\n" > $NEW_FILE

转载于:https://my.oschina.net/comics/blog/3006218

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值