Linux系统下转换文件编码的方法小结

一、利用iconv命令进行文件内容编码转换

用法: iconv [选项...] [文件...]

有如下选项可用:

输入/输出格式规范:

-f, --from-code=名称 原始文本编码

-t, --to-code=名称 输出编码

信息:

-l, --list 列举所有已知的字符集

输出控制:

-c 从输出中忽略无效的字符

-o, --output=FILE 输出文件

-s, --silent 关闭警告

--verbose 打印进度信息

-?, --help 给出该系统求助列表

--usage 给出简要的用法信息

-V, --version 打印程序版本号

例子:

复制代码代码如下:

iconv -f gb2312 -t utf-8 aaa.txt >bbb.txt

这个命令读取aaa.txt文件,从gb2312编码转换为utf-8编码,其输出定向到bbb.txt文件。

注:windows下写字板生成的txt一般是gb18030编码,如果指定错误会报如下错误:

iconv: 未知 6071 处的非法输入序列

二、文件名编码转换因为现在用linux,原来在windows里的文件都是用GBK编码的。所以copy到linux下是乱码,文件内容可以用iconv来转换可是好多中文的文件名还是乱码,找到个可以转换文件名编码的命令,就是convmv。

convmv命令详细参数

例如

convmv -f GBK -t UTF-8 *.mp3

不过这个命令不会直正的转换,你可以看到转换前后的对比。如果要直正的转换要加上参数 --notest

convmv -f GBK -t UTF-8 --notest *.mp3

-f 参数是指出转换前的编码,-t 是转换后的编码。这个千万不要弄错了。不然可能还是乱码哦。还有一个参数很有用。就是 -r 这个表示递归转换当前目录下的所有子目录。

* 需要安装 convmv-1.10-1.el5.noarch.rpm

三、更好的傻瓜型命令行工具enca

它不但能智能的识别文件的编码,而且还支持成批转换。

1.安装

复制代码代码如下:

$sudo apt-get install enca

2.查看当前文件编码

复制代码代码如下:

enca -L zh_CN ip.txt

Simplified Chinese National Standard; GB2312

Surrounded by/intermixed with non-text data

3.转换

命令格式如下

$enca -L 当前语言 -x 目标编码 文件名

例如要把当前目录下的所有文件都转成utf-8

复制代码代码如下:

enca -L zh_CN -x utf-8 *

复制代码代码如下:

enca -L zh_CN file检查文件的编码

复制代码代码如下:

enca -L zh_CN -x UTF-8 file将文件编码转换为"UTF-8"编码

复制代码代码如下:

enca -L zh_CN -x UTF-8 < file1 > file2如果不想覆盖原文件可以这样,很简单吧。

PS:.查看编码的方法

方法一:

复制代码代码如下:

file filename

方法二:在Vim中可以直接查看文件编码

复制代码代码如下:

:set fileencoding

即可显示文件编码格式。

如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在

~/.vimrc 文件中添加以下内容:

复制代码代码如下:

set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936

这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照

fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ASCII)编码打开。相关阅读:

JS实现的打字机效果完整实例

div与span之间有什么区别

Android应用启动另外一个apk应用的方法

Android 带进度条的WebView 示例代码

php中数字、字符与对象判断函数用法实例

Win10正式版10240升级安装Win10 TH2正式版10586图文教程

js/jQuery简单实现选项卡功能

iOS应用中UITableView左滑自定义选项及批量删除的实现

oracle排名函数的使用方法分享

IOS实现验证码倒计时功能(二)

华硕和联想笔记本如何修改BIOS win10改win7 BIOS设置方法

MySql 5.6.14 winx64配置方法(免安装版)

游戏卡怎么在Windows系统上玩?

java利用冒泡排序对数组进行排序

linux iconv 文件名,Linux_Linux系统下转换文件编码的方法小结,一、利用iconv命令进行文件内 - phpStudy...相关推荐

  1. linux vsftpd用法,Linux_LINUX系统下vsftpd 命令详解,FTP命令是Internet用户使用最频 - phpStudy...

    LINUX系统下vsftpd 命令详解 FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操 作系统下使用FTP,都会遇到大量的FTP内部命令. 熟悉并灵活应用FTP的内 ...

  2. linux添加触摸屏,Linux_Linux系统下触摸屏的简单使用和配置方法, 如果你装的是 Ubuntu 发行 - phpStudy...

    Linux系统下触摸屏的简单使用和配置方法 如果你装的是 Ubuntu 发行版,那么基本上你的 X 的配置文件 (xorg.conf) 里面已经设置好了相关的驱动,是默认设置,你只需要添加些相关的参数 ...

  3. linux 蓝牙 profile,Linux_Linux系统下蓝牙立体声配置A2DP profile,系统配置:Linux debian 2.6.22.6 #7 - phpStudy...

    Linux系统下蓝牙立体声配置A2DP profile 系统配置:Linux debian 2.6.22.6 #7 Mon Sep 3 10:46:00 CST 2007 ppc GNU/Linux ...

  4. linux 软键盘输入密码,Linux_Linux系统中使用屏幕键盘的方法,屏幕键盘可以作为实体键盘输 - phpStudy...

    Linux系统中使用屏幕键盘的方法 屏幕键盘可以作为实体键盘输入的替代方案.在某些时候,屏幕键盘显得非常需要. 比如, 你的键盘刚好坏了:你的机器太多,没有足够的键盘:你的机器没有多余的接口来连接键盘 ...

  5. linux 文件夹增加容量,Linux系统下对目录扩容的方法介绍

    导读 本文介绍了在Linux系统下对目录扩容的方法,一起来看一下吧. 1.现象: 日志服务器当初考虑不周,分区划分不太合理: 2.目标: 将/home磁盘空间缩减  并将新的磁盘分区扩充到/根目录 卸 ...

  6. linux的常用备份方法,Linux系统下常用的数据备份方法

    Linux系统下常用的数据备份方法 发布时间:2009-10-28 15:11:36来源:红联作者:szlfeng Linux系统下常用的数据备份方法 1.本机上数据的手工备份 Linux系统上配有功 ...

  7. linux添加HP网络打印机,在Ubuntu 18.10系统下安装HP网络打印机的方法

    本文介绍在Ubuntu 18.10系统下安装HP网络打印机的方法,只需要四个步骤就可以了.同样的方法也适合在Ubuntu 18.04系统下. 背景 最近做了个双系统Windows+Ubuntu 18. ...

  8. Linux 系统下各种包的安装方法

    一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd soft.version.rpm所在 ...

  9. linux 无线网卡 免驱动,Linux系统下安装USB无线网卡驱动方法

    Linux系统下安装USB无线网卡驱动方法 具体安装过程分了如下步骤进行:确认 usb-wifi 设施型号 , 根据确认结果选择驱动信息. 安装驱动 mt7601u , 假如已经自带跳过此步骤 配置驱 ...

  10. linux测试自动化,一种基于Linux系统下自动化测试RoCE性能的方法及系统与流程

    本发明涉及自动化测试的技术领域,特别涉及一种基于Linux系统下自动化测试roce性能的方法及其系统. 背景技术: 现在迅速发展的服务器行业,对网络服务性能提出了越来越高的要求.特别是在互联网行业以及 ...

最新文章

  1. CentOS Linux下VNC Server远程桌面配置详解
  2. GGNN(Gated Graph Sequence Neural Networks)
  3. 为什么苹果6没有录屏_为什么苹果手机受欢迎?因为没有一部安卓手机是“干净”的...
  4. 专业英语笔记(Line Feed and Type Conversion)
  5. Ali-Tomcat 安装
  6. 2014Esri全球用户大会之ArcGIS Online
  7. 高通模式9008模式linux,重磅干货!高通9008模式与数据提取
  8. 在virtualbox安装xp系统及安装oracle
  9. Android App Bundle出来了,App加壳技术不能用了怎么办?
  10. 计算机处理器显卡,怎么看处理器cpu和显卡
  11. es7新特性随堂笔记
  12. H2O机器学习框架的学习
  13. linux之系统间的文件传输(scp,rsync以及二者之间的区别)
  14. python中去掉字符串中的空格
  15. uniapp连接到微信小程序调试全过程以及遇到的bug
  16. 全面解读居住证积分新政,赶紧看看你离落户上海还有多远!
  17. 东北石油计算机类专业分数线,2018年东北石油大学各省录取分数线汇总
  18. python包管理工具总结
  19. 前端应该了解的PWA
  20. 2018年之前的15年

热门文章

  1. 表单式工作流功能模块设计方案
  2. 沈大海38节jquery强化教程2016视频下载
  3. 万稞pw80线切割编程软件_现在模具设计,编程行业,还是很吃香的
  4. 废弃qq号大全密码2020_被永久封禁的QQ号解封历程
  5. 浅谈java实现桌面小程序
  6. Java Web 学生选课管理系统
  7. 推荐几款好用的MySQL开源客户端,建议收藏
  8. 「干货」Web安全红队外围信息收集「详细总结」
  9. Spark SQL 从入门到精通 - Spark SQL 行转列、列转行案例
  10. kotlin android中文文档,Android studio 生成带Kotlin文档的实现方式