#干货满满#Linux删除文件中的 ^M 字符
  

Hacking 40073人觉得有帮助

{{ttag.title}}
现象:
    在用VI 编辑文件时发现文本文件每行末尾都有一个“^M”符号,这样在数据处理或者
Shell脚本运行时发生错误。

原因:
    编辑器在处理回车符方法不同造成的。文本数据在DOS下编辑后,以二进制方式FTP传到Linux 或着Unix下用VI打开就会出现上述现象。

处理方法:

    用VI编辑器中的查找替换命令,将“^M”替换为空格符,具体操作如下:

    VI编辑器转换命令模式 Shift + :  输入 g//^M/s//^M// 或者 %s/^M//g,回车就可以了。

备注:

    那么,这句命令到底是什么意思呢?% 指匹配整个文件,s 是置换的意思,^M 注意要用 Ctrl + V Ctrl + M 来输入,M 后面的 $ 代表匹配行尾的内容,最后的 g 则表示每行中匹配到的内容都要置换。理解了命令的含义,就好变通使用了,比如说,要将某个文件中的 Vim 全部替换成 VIM,则可以使用这样的命令::%s/Vim/VIM/g。

打赏鼓励作者,期待更多好文!

打赏
3人已打赏

cyq 发表于 2023-4-1 00:18
  
楼主分享的案例很实用,具有典型性,希望有更多这样的干货供我们学习参考,非常感谢!
平凡的小网工 发表于 2023-4-3 11:56
  
楼主,是你让我深深地理解了‘人外有人,天外有天’这句话。谢谢你!在看完这帖子以后,我没有立即回复,因为我生怕我庸俗不堪的回复会玷污了这社区少有的帖子。但是我还是回复了,因为觉得如果不能在如此精彩的帖子后面留下自己的网名,那我会遗憾终生的!
Mr程 发表于 2023-4-19 10:07
  
,希望有更多这样的干货供我们学习参考,非常感谢!
发表新帖
热门标签
全部标签>
每日一问
新版本体验
产品连连看
纪元平台
GIF动图学习
信服课堂视频
安全效果
标准化排查
【 社区to talk】
功能体验
社区新周刊
技术笔记
安装部署配置
流量管理
平台使用
云化安全能力
畅聊IT
上网策略
每周精选
高手请过招
全能先锋系列
答题自测
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
测试报告
日志审计
问题分析处理
每日一记
运维工具
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
排障笔记本
产品预警公告
玩转零信任
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
2023技术争霸赛专题
卧龙计划
华北区拉练
天逸直播
以战代练
秒懂零信任
技术晨报
技术盲盒
山东区技术晨报
文档捉虫
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
西北区每日一问
升级&主动服务
高频问题集锦
POC测试案例
专家说
热门活动
产品动态
行业实践
产品解析
关键解决方案

本版达人

新手89785...

本周建议达人

YangZhe...

本周分享达人