欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux中的编码转换程序convmv的安装和使用教程

程序员文章站 2022-12-07 08:39:12
这篇文章主要介绍了Linux中的编码转换程序convmv的安装和使用教程,在编程和处理Windows下移动过来的文件时经常可以用到,需要的朋友可以参考下... 16-04-19...

今天介绍个文件名转码的工具--convmv,convmv能帮助我们很容易地对一个文件,一个目录下所有文件进行编码转换,比如gbk转为utf8等。
安装:

复制代码
代码如下:
yum install convmv

(这里的示例环境为centos系统)

语法:

复制代码
代码如下:

convmv [options] file(s) ... directory(s)

主要选项:
1、-f encoding
指定目前文件名的编码,如-f gbk
2、-t encoding
指定将要转换成的编码,如-f utf-8
3、-r
递归转换目录下所有文件名
4、--list
列出所有支持的编码
5、--notest
默认是只打印转换后的效果,加这个选项才真正执行转换操作。
 
常用参数:
-r 递归处理子文件夹
–notest 真正进行操作,默认情况下是不对文件进行真实操作
–list 显示所有支持的编码
–unescap 可以做一下转义,比如把%20变成空格
-i 交互模式(询问每一个转换,防止误操作)
convmv 的使用方法:
convmv -f 源编码 -t 新编码 [选项] 文件名
 
例子:

转换文件编码, 以 big5转换成 utf-8 为例:
 [/code]
$ convmv -f big5 -t utf-8 /disk1
[/code]
列出可以用的编码:
 

复制代码
代码如下:

$ convmv --list

转换档名中的 %xx 这种 16 进位的编码:
 
复制代码
代码如下:

$ convmv --unescape 档案

把档名中的字母全转换成小写:
 
复制代码
代码如下:

$ convmv --lower 档案

要注意的地方是它预设只会把转换的结果秀出来, 要再加上 --notest 参数才会真正去改文件名。
另外几个用到的参数是 -r 会连子目录的文件一起转换, -i 是互动模式, 一个一个档案询问是否转换等等, 可以用 --help 参数看说明。