linux中转换windows文件编码?
查看文件编码
在Linux中查看文件编码可以通过以下几种方式:
1.在Vim中可以直接查看文件编码
:set fileencoding
即可显示文件编码格式。
如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在
~/.vimrc 文件中添加以下内容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照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常用命令.txt > linux常用命令.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 可以做一下转义,比如把%20变成空格
比如我们有一个utf8编码的文件名,转换成GBK编码,命令如下:
convmv -f UTF-8 -t GBK –notest utf8编码的文件名
这样转换以后”utf8编码的文件名”会被转换成GBK编码(只是文件名编码的转换,文件内容不会发生变化)
Linux上如何进行换行符转换?
在Linux中,文本文件用”n”(0a)表示回车换行,而Windows用”rn”(0d 0a)表示回车换行。所以在Linux中使用Windows的文本文件常常会出现错误。为了避免这种错误,Linux提供了两种文本格式相互转化的命令:dos2unix和unix2dos,dos2unix把”rn”转化成”n”,unixtodos把”n”转化成”rn”。
命令dos2unix和unix2dos的使用非常简单,格式为:dos2unix filename
如果想更多的了解这两个命令,可以查看手册:
man dos2unix
它会告诉你dos2unix的高级用法
(二)
Ubuntu下默认没有安装dos2unix工具,而且也没有一个叫这个名字的工具(我在solaris里用过dos2unix,不知道为啥Ubuntu没有)。但是有一个替代工具——tofrodos , 下面就说一下它的安装和使用。
当然还是apt安装啦。
(1)安装tofrodos
sudo apt-get install tofrodos
实际上它安装了两个工具:todos(相当于unix2dos),和fromdos(相当于dos2unix)
安装完即可,现在你已经可以进行文本格式的转换啦。
比如: todos Hello.txt (即unix2dos Hello.txt)
fromdos Hello.txt (即dos2unix Hello.txt)
(2)做一些优化
由于习惯了unix2dos和dos2unix的命令,可以把上面安装的两个工具链接成unix2dos 和dos2unix,或者仅仅是起个别名,并放在启动脚本里。
步骤:
以下是代码片段:
ln -s /usr/bin/todos /usr/bin/unix2dos
ln -s /usr/bin/fromdos /usr/bin/dos2unix
或者在 ~/.bashrc里起个别名
vi ~/.bashrc
添加 alias unix2dos=todos alias dos2unix=fromdos
(三)
另外如果要在目录中大量替换, 可以使用find + xargs
比如:
find ./model -name *.sh | xargs fromdos
ext格式怎么转换?
使用分区助手可以对分区格式任意转换。ext格式一般用于linux分区,如果要使用windows系统可以转换为ntfs格式分区。
linux 下markdown如何转换成word?
markdown转换word
通过word软件打开markdown文件实现: 打开原markdown文档后,另存为word格式即可。
如何在Linux中将文件编码转换为UTF-8?
在Linux中转换文件的编码可以使用iconv命令,它的使用很简单的,比如下面这条命令将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编码的文件了。