linux命令编码格式 linux命令行设置编码格式

linux下文件编码格式转换方法(gb18030/utf-8)linux下文件编码格式转换方法(gb18030/utf-8)
在 Linux 做开发或者系统管理遇到乱码是经常的事情linux命令编码格式,主要windows下中文的默认编码是bg2312linux命令编码格式 , 而 linux下是utf-8 。很多时候 涉及到和windows平台系统的通信免不linux命令编码格式了编码的转化linux命令编码格式,可能大部分人都用iconv库函数(包含在glib中)和iconv命令来执行编码转换,即:
iconv -f gb18030 -t utf-8 file1.txt -o file2.txt
说实话这个命令不好使,一方面容易重复转换,另一方面不支持通配符 , 无法成批转 换,文件少了还好说 , 要是一大堆文件岂不是要累死linux命令编码格式?
【linux命令编码格式 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怎么看文件的字符集编码?在Linux中查看文件编码可以通过以下几种方式linux命令编码格式:1.在Vim中可以直接查看文件编码:setfileencoding,即可显示文件编码格式 。2.enca(如果你的系统中没有安装这个命令,可以用sudoyuminstall-yenca安装)查看文件编码
下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换 。
一,查看文件编码linux命令编码格式:在Linux 中查看文件编码可以通过以下几种方式:
1.在Vim中可以直接查看文件编码:setfileencoding即可显示文件编码格式 。如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc文件中添加以下内容:setencoding=utf-8fileencodings=ucs-bom,utf-8,cp936这样 , 就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ASCII)编码打开 。
2.enca(如果你的系统中没有安装这个命令,可以用sudoyuminstall-yenca安装)查看文件编码#36;encafilenamefilename:Universaltransformationformat8bits;UTF-8CRLFlineterminators需要说明一点的是,enca对某些GBK编码的文件识别的不是很好,识别时会出现:Unrecognizedencoding
二,文件编码转换
1.在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式:setfileencoding=utf-82.iconv转换 , iconv的命令格式如下:输入/输出格式规范:-f,--from-code=名称原始文本编码-t,--to-code=名称输出编码信息:列举所有已知的字符集输出控制:-c从输出中忽略无效的字符-o,--output=FILE输出文件Svn8.Com-s,--silent关闭警告--verbose打印进度信息-?,--help给出该系统求助列表--usage给出简要的用法信息-V,--version打印程序版本号例子:iconv-futf-8-tgb2312aaa.txtbbb.txt这个命令读取aaa.txt文件,从utf-8编码转换为gb2312编码,其输出定向到bbb.txt文件 。iconv-fencoding-tencodinginputfile比如将一个UTF-8编码的文件转换成GBK编码iconv-fGBK-tUTF-8file1-ofile2
3.enconv转换文件编码比如要将一个GBK编码的文件转换成UTF-8编码,操作如下enconv-Lzh_CN-xUTF-8filename
linux查看文件编码格式命令i).在 Vim 中可以直接查看文件编码(shift:)输入set fileencoding 即可显示文件编码格式 。
如果你只是想查看其它编码格式的文件或者想解决用 Vim 查看文件乱码的问题 , 那么你可以在 ~/.vimrc 文件中添加以下内容: set
encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 这样,就可以让 vim 自动识别文件编码
(可以自动识别 UTF-8或者 GBK 编码的文件),其实就是依照 fileencodings
提供的编码列表尝试,如果没有找到合适的编码 , 就用 latin-1(ASCII)编码打开 。
ii). enca (需要安装)查看文件编码:$enca filename filename: Universal
transformation format 8 bits; UTF-8 CRLF line terminators 需要说明一点的是,enca
对某些 GBK 编码的文件识别的不是很好,识别时会出现: Unrecognized encoding
iii)还有一种很简单的方式,file 文件名 可以查看非elf文件的编码格式
linux文件编码转换及Windows上创建的文件转为Linux格式在Linux上查看文件,有时候会出现中文乱码的问题 。这是因为文件编码不兼容导致的,需要进行文件转码 。
1、用VI查看文件编码,在Vi命令模式以下命令,即可显示文件编码格式 。
2、 改写~/.vimrc 文件 , 在文件中添加以下内容,就可以让vi自动识别UTF-8或者GBK编码的文件 。
将window上创建的脚本传输到linux执行时,会出现-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory的错误 。
1、vi打开文件 , 并在命令模式下输入以下命令回车,此时看到的是dos格式 。
2、修改文件格式, 同样在vi命令格式下,输入以下修改文件格式 。
关于linux命令编码格式和linux命令行设置编码格式的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读