当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 18 篇帖子 ]  前往页数 1, 2  下一页
作者 内容
1 楼 
 文章标题 : 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-04 1:27 
头像

注册: 2008-10-08 13:48
帖子: 3476
送出感谢: 0 次
接收感谢: 1
从别人电脑拷来很多TXT文件,可都显示乱码,用iconv一个一个改太慢,如何用iconv批量修改,望知者指点。


_________________
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-04 1:34 
头像

注册: 2007-10-29 22:12
帖子: 5353
地址: 江苏南京
系统: OSX 10.9 + Ub 1304
送出感谢: 0 次
接收感谢: 5
bash的for

看bash指南即可


_________________
佛经说,人有八苦: 生、老、病、死、求不得、怨憎、爱别离、五阴盛 故我苦!
圣经说,人有七罪: 饕餮、贪婪、懒惰、淫欲、傲慢、嫉妒和暴怒  故我有罪!

我这篇帖子里面没有任何攻击我们伟大的中华人民共和国政府和任劳任怨的人民公仆(和本论坛高素质的版主)的文字和含义;

特此声明!

有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道是爱的,也要去放弃,因为没结局;有时候,我们明知道没路了,却还在前行,因为习惯了。

欢迎来我的新浪微博@me


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-08 0:57 
头像

注册: 2008-10-08 13:48
帖子: 3476
送出感谢: 0 次
接收感谢: 1
:em20 还得自己来呀,哎,这年头人懒了是不行呀。


_________________
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-10 15:30 
头像

注册: 2007-09-14 21:03
帖子: 1143
地址: 浙江
送出感谢: 1
接收感谢: 1
代码:
for i in `find . *`; do if [ -f "$i" ]; then iconv -f gb2312 -t utf8 $i > "./converted/$i" fi ; done


_________________
Say hello to everyday!


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 0:16 
头像

注册: 2008-10-08 13:48
帖子: 3476
送出感谢: 0 次
接收感谢: 1
引用:
jioyo@jioyo-laptop:~/myspace/ebook/txt$ for i in `find . *`; do if [ -f "$i" ]; then iconv -f gb2312 -t utf8 $i > "./converted/$i" fi ;done
-bash: 在未预料的“done”附近出现语法错误

好象要建converted文件夹,可是还是出现这个问题;
for i in *.txt ; do iconv -f gb2312 -t utf-8 $i > "converted/$i";done
只能转一部分,是一个文件里的一部分内容编码变了,可别的都没有了% :em20


_________________
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 8:27 
头像

注册: 2007-06-13 15:57
帖子: 12566
地址: 在他乡
送出感谢: 50
接收感谢: 87
代码:
enconv *.txt


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 9:25 
头像

注册: 2007-09-14 21:03
帖子: 1143
地址: 浙江
送出感谢: 1
接收感谢: 1
怎么会只转一部分啊

代码:
for i in *.txt; do iconv -f gb2312 -t utf-8 $i -o "iconv_$i"; done


enconv 什么命令啊 ,搜不到。。


_________________
Say hello to everyday!


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 10:21 
头像

注册: 2008-10-08 13:48
帖子: 3476
送出感谢: 0 次
接收感谢: 1
daf3707 写道:
代码:
enconv *.txt

谢了,学习了……


_________________
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286


页首
 用户资料  
 
9 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 11:55 
头像

注册: 2007-05-08 16:26
帖子: 2058
地址: 火星内核某分子内某原子核内
系统: arch
送出感谢: 20
接收感谢: 6
直接用vim打开这些文件就不会乱码.会自动识别编码的.

/etc/vim/vimrc 里加2行:

代码:
 set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,iso-8859-1
 set encoding=utf-8


_________________
笔记本 :
F208S : gentoo
A460P i3G D6 : UBUNTU + WIN7
UN43D1 : UBUNTU + WIN7
1000人超级QQ群 LINUX + WIN : 31465544 或 18210387


页首
 用户资料  
 
10 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 14:41 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 272
enconv就是自动猜编码的。为什么老有人用iconv


_________________
● 鸣学


页首
 用户资料  
 
11 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 17:40 
头像

注册: 2008-10-08 13:48
帖子: 3476
送出感谢: 0 次
接收感谢: 1
sevk 写道:
直接用vim打开这些文件就不会乱码.会自动识别编码的.

/etc/vim/vimrc 里加2行:

代码:
 set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,iso-8859-1
 set encoding=utf-8

:em06 这个我知道,其实主要是给别人弄,直接给别人乱码,我得转下……


_________________
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286


页首
 用户资料  
 
12 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 17:42 
头像

注册: 2008-10-08 13:48
帖子: 3476
送出感谢: 0 次
接收感谢: 1
hellojinjie 写道:
怎么会只转一部分啊

代码:
for i in *.txt; do iconv -f gb2312 -t utf-8 $i -o "iconv_$i"; done


enconv 什么命令啊 ,搜不到。。

hellojinjie 写道:
怎么会只转一部分啊

代码:
for i in *.txt; do iconv -f gb2312 -t utf-8 $i -o "iconv_$i"; done


enconv 什么命令啊 ,搜不到。。


for i in *.txt; do iconv -f gb2312 -t utf-8 $i -o "iconv_$i"; done这个还是不行,我20多M的txt转了后就1.7M了,
iconv: 372位置的非法输入序列
iconv: 3793位置的非法输入序列
iconv: 4975位置的非法输入序列
iconv: 23031位置的非法输入序列
iconv: 60530位置的非法输入序列
iconv: 55668位置的非法输入序列
iconv: 2903位置的非法输入序列
iconv: 11079位置的非法输入序列
iconv: 91018位置的非法输入序列
iconv: 63052位置的非法输入序列
iconv: 16995位置的非法输入序列
iconv: 1007位置的非法输入序列
iconv: 187199位置的非法输入序列
出来这一堆。
enconv 这个得安enca包。


_________________
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286


页首
 用户资料  
 
13 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-11 17:57 
头像

注册: 2007-09-14 21:03
帖子: 1143
地址: 浙江
送出感谢: 1
接收感谢: 1
原来还有enca 可以用来猜编码的。 :em11

上面的错误可能是-f 后的参数错误吧,也就是说原来的编码不是gb2312,,
:em23 gb18030 和 gb2312 两种编码可不可以混用的?


_________________
Say hello to everyday!


页首
 用户资料  
 
14 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-04-13 12:22 
头像

注册: 2006-04-12 20:05
帖子: 8495
地址: 杭州
送出感谢: 0 次
接收感谢: 8
转编码真是个大麻烦事啊..


_________________
关注我的blog: ε==3


页首
 用户资料  
 
15 楼 
 文章标题 : Re: 如何用iconv批量修改文本编码?
帖子发表于 : 2009-09-19 17:00 

注册: 2008-12-23 20:32
帖子: 91
送出感谢: 0 次
接收感谢: 0 次
daf3707 写道:
代码:
enconv *.txt




向高手致敬!

cd 到文件夹里面 执行你那代码。结果瞬间1500多txt文本变成了utf-8!!!!
:em11


_________________
intel core 2 Duo T5250
nVIDIA geforce 8600m gt


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 18 篇帖子 ]  前往页数 1, 2  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译