如何将文件中的控制字符正确去除?

weixin_38056302 2009-06-01 05:42:45

刚学linux,老师让我们用shell做一个c、c++编辑器,调用gcc编译,出错后,自动定位至出错行修改。
我碰到一个问题,就是
cat > a.cpp
然后输入代码,其中可能会有错误,通过按方向键返回前面的某行,更改
最后编辑完退出
这时,如果cat a.cpp将会看到我所要的代码(假设代码正确)
可事实上a.cpp里面有很多控制字符,如果直接g++ a.cpp,不能正确编译
cat -v a.cpp或者vi a.cpp将会看到文件里有很多控制字符
我本来打算使用cat a.cpp > b.cpp结果b.cpp里面的内容还是有控制字符
请问如何将cat a.cpp这个我希望看到的结果重定向给b.cpp
或者直接把a.cpp变成我所希望看到的不包含控制符的文件?(直接去除控制符肯定是不行的)

例如:
cat > a
依次输入
a,回车,上,b,回车,ctrl+D
cat a
将看到
b
cat -v a
将看到
a
^[[Ab
如何将文件a变成我希望得到的输出b而不包含控制符?重定向到其他文件也可以
谢谢了! [ 本帖最后由 fj0621 于 2009-6-1 17:58 编辑 ]
...全文
26 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧