一个怪异的问题。

使用下面的命令
  1. $ for file in `ls *.html*`;do iconv -f gb2312 -t utf-8 $file >$count.html; let 'count=count+1';done
复制代码
得到的html文件,用vim打开后,每行后面出现了字符^M。

而使用命令行下的
  1. $ iconv -f gb2312 -t utf-8 list.html >test.html
复制代码
得到的用vim打开却是非常正常。

什么原因?

作者: L_kernel   发布时间: 2011-06-09

看看
iconv -f gb2312 -t utf-8 "$(ls *.html* | tail -1)" > test.html
是什么结果

作者: ly5066113   发布时间: 2011-06-09

应该是有两个以上的文件,而且既有dos格式,也有unix格式,或者mac格式。

作者: blackold   发布时间: 2011-06-09



QUOTE:
看看
iconv -f gb2312 -t utf-8 "$(ls *.html* | tail -1)" > test.html
是什么结果
ly5066113 发表于 2011-06-09 10:34

结果同样是末尾有^M结尾的符号。

作者: L_kernel   发布时间: 2011-06-09



QUOTE:
应该是有两个以上的文件,而且既有dos格式,也有unix格式,或者mac格式。
blackold 发表于 2011-06-09 10:42

也就是先dos2unix,然后再iconv?

作者: L_kernel   发布时间: 2011-06-09

回复 L_kernel


    你可以试试。

作者: blackold   发布时间: 2011-06-09



QUOTE:
回复  L_kernel


    你可以试试。
blackold 发表于 2011-06-09 10:46


OK,又是那个<CR>惹的祸。

作者: L_kernel   发布时间: 2011-06-09