unix 下怎么批量替换文件?

2014-09-18 11:33:10 +08:00
 ren2881971
从windows ftp到unix的文件 打开后发现 每行末尾多了个^M

怎么把文件夹所有文件的 ^M都替换没了。。
3820 次点击
所在节点    程序员
11 条回复
azuginnen
2014-09-18 11:39:03 +08:00
find .| xargs dos2unix

这样不知道对不对,cygwin下有这个工具的
ren2881971
2014-09-18 13:18:30 +08:00
@azuginnen 你这个是好几个命令 在一起的?
ren2881971
2014-09-18 14:29:56 +08:00
vi

:%s/^M$//g 先能去掉单个页面的再说!
plprapper
2014-09-18 14:54:12 +08:00
dos2unix unix2dos 之类的命令吧
ooxxcc
2014-09-18 14:59:05 +08:00
一楼的是管道,批量处理当前目录下的所有问文件
zix
2014-09-18 15:01:53 +08:00
^M的话用dos2unix应该是可以的
phycgp
2014-09-18 15:04:55 +08:00
假设你要修改的文件全以 .html 为后缀

find ./ -name '*.html' -exec dos2unix {} \;
ren2881971
2014-09-18 16:10:36 +08:00
@phycgp 你这个命令是 当前路径下 html后缀的都执行dos2unix 是么?
phycgp
2014-09-18 16:24:34 +08:00
@ren2881971 当前目录及所有的下级目录
ren2881971
2014-09-18 16:26:06 +08:00
@phycgp 赞一个!
chaker
2014-09-19 17:49:19 +08:00
sed -i -e 's/\^M//g' `grep '\^M$' -rl .`

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/134197

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX