linux 下 中文 gbk 转 utf-8我试了说的情况,没有报错啊 , 在windows下使用文本编辑器输入喆,字符编码格式为GBK,并且跟其它汉字混合在一起,传到linux上由于我的环境是utf-8的,所以是乱码,然后运行
iconv -f GBK -t UTF-8 源文件 -o目标文件
打开目标文件,显示一切正常了
备注:我的linux环境是suse linux enterprise server 11 sp3(x86_64)
Linux中如何查看文件编码及对文件进行编码转换查看文件编码
在Linux中查看文件编码可以通过以下几种方式:
1.在Vim中可以直接查看文件编码
:set fileencoding
【linux中文转码命令 linux 转编码格式】即可显示文件编码格式 。
如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题linux中文转码命令,那么你可以在
~/.vimrc 文件中添加以下内容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
这样linux中文转码命令,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件)linux中文转码命令,其实就是依照fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ASCII)编码打开 。
文件编码转换
1.在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式
:set fileencoding=utf-8
2. iconv 转换,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如将一个UTF-8 编码的文件转换成GBK编码
iconv -f GBK -t UTF-8 file1 -o file2
iconv -f gbk -t utf8 linux常用命令.txtlinux常用命令.txt.utf8
文件名编码转换:
从Linux 往 windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名 中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题 , 解决这个问题需要对文件名进行转码 。
在Linux中专门提供了一种工具convmv进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK 。
首先看一下你的系统上是否安装了convmv,如果没安装的话用:
yum -y install convmv
安装 。
下面看一下convmv的具体用法:
convmv -f 源编码 -t 新编码 [选项] 文件名
常用参数:
-r 递归处理子文件夹
--notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验 。
--list 显示所有支持的编码
--unescap 可以做一下转义,比如把 变成空格
比如linux中文转码命令我们有一个utf8编码的文件名,转换成GBK编码 , 命令如下:
convmv -f UTF-8 -t GBK --notest utf8编码的文件名
这样转换以后"utf8编码的文件名"会被转换成GBK编码(只是文件名编码的转换,文件内容不会发生变化)
如何在Linux中将文件编码转换为UTF-8在Linux中转换文件linux中文转码命令的编码可以使用iconv命令linux中文转码命令,它的使用很简单的linux中文转码命令,比如下面这条命令将GB2312编码的文件转换成UTF-8编码的文件:
iconv -f gb2312 -t utf8 mygb2312.txt -o myutf8.txt
这个例子中mygb2412.txt是要转换的文件,myutf8.txt是转换后的新文件 。iconv命令最常用的形式就是上面这条命令,它所使用的三个选项解释如下:
-f选项:就是from的意思,后面跟原来的编码格式
-t选项:英文to的意思 , 后面跟转换后的新编码
-o选项:指定输出文件,就是转换编码后的新文件的文件名,没有这个参数时新文件会将原来的文件覆盖 。
其实还可以用几乎每个Linux发行版都自带的gedit这个软件打开需要转换编码的文件,然后选择另存为功能 , 在保存文件对话框中选择UTF-8编码 , 再输入一个新文件名点击保存就转换出一个UTF-8编码的文件linux中文转码命令了 。
linux下文件编码格式转换方法(gb18030/utf-8)linux下文件编码格式转换方法(gb18030/utf-8)
在 Linux 做开发或者系统管理遇到乱码是经常的事情linux中文转码命令 , 主要windows下中文的默认编码是bg2312linux中文转码命令,而 linux下是utf-8 。很多时候 涉及到和windows平台系统的通信免不了编码的转化linux中文转码命令,可能大部分人都用iconv库函数(包含在glib中)和iconv命令来执行编码转换,即:
iconv -f gb18030 -t utf-8 file1.txt -o file2.txt
说实话这个命令不好使,一方面容易重复转换,另一方面不支持通配符,无法成批转 换 , 文件少了还好说,要是一大堆文件岂不是要累死?
今天linux中文转码命令我要推荐的是另一个 Shell 下编码转换工具enca 。用它不仅可以转换编码,还可以查看文件的原始编码,而且还支持成批转换 。使用上也比iconv方便一些 。安装enca很简单,一般用源安装就行了 , enca用法如下:
enca -L 当前语言文件名
enca -L zh_CN file //检查文件的编码
enca -L 当前语言 -x 目标编码 文件名
enca -L zh_CN -x UTF-8 file //将文件编码转换为”UTF-8″编码
enca -L zh_CN -x UTF-8file1file2 //如果不想覆盖原文件可以这样
除了有检查文件编码的功能以外 , ”enca”还有一个好处就是如果文件本来就是你要转换的那种编码,它不会报错,还是会print出结果来,而”iconv”则会报错 。这对于脚本编写是比较方便的事情 。
如何在 Linux 中将文件编码转换为 UTF-8unix下转换文件编码的命令叫做iconv
iconv命令用法如下:
iconv
[选项...]
[文件...]
常用参数
-f,
--from-code=原始文本编码
-t,
--to-code=输出编码
-l,
--list
列举所有已知的字符集
-c
从输出中忽略无效的字符
-o,
--output=file
输出文件
举例:
iconv
-c
-f
gb2312
-t
utf-8
-o
utf8.txt
ansi.txt
linux中文文件名乱码怎么解决Linux文件名、文件内容乱码,主要原因是windows上的中文编码默认是GBK,而Linux默认中文编码为UTF-8,由于编码不一致,所以导致乱码问题 。
为了解决这个乱码,需要对文件进行转码 , 具体如下:
1、前提保证已安装了convmv;
2、具体convmv的用法:
Convmv –f 源编码 –t 新编码 [选项] 文件名
一般常用参数:
-r 递归处理子目录
--notest 真正进行操作 , 默认情况下是不对文件进行真实操作的,只是一个预览
--list 显示所有支持的编码
--unescap 可以做一个转义
3、比如我们有一个utf8的文件名 , 要求转换成gbk编码,命令如下:
Convmv –f utf-8 –t gbk –notest 文件名
也可以使用linux下最好用的编码转换工具iconv来进行转码操作 。
例子:将GBK编码的文件转换成UTF-8
iconv -f GBK -t UTF-8 gbkfile.txtutf8file.txt
linux中文转码命令的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于linux 转编码格式、linux中文转码命令的信息别忘了在本站进行查找喔 。
推荐阅读
- jsformdata获取扩展名,js formdata
- python如何实现多级列表,python多级排序
- 可以看pdf文件的软件是什么格式,能看pdf
- 拼多多单场直播带货,拼多多 直播带货
- php数据猜数游戏 猜数字游戏代码python
- flutter引用插件git的简单介绍
- 郑州计算机毕业设计,计算机专业毕设系统
- 崇明网红丁坝在哪里直播,上海崇明堡镇丁坝
- linux打断执行的命令 linux怎么打断点