经常遇到一个问题就是windows中默认的是GBK,而linux是UTF-8。需要对文件进行转换
查看文件编码
file filename
#如 file a.sh
文件编码转换
- enconv 转换文件编码,比如要将一个GBK编码的文件转换成UTF-8编码,操作如下
enconv -L zh_CN -x UTF-8 filename
#这个我经常用
- iconv 转换,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如将一个UTF-8 编码的文件转换成GBK编码
iconv -f GBK -t UTF-8 file1 -o file2
- 在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式
Shell代码
set fileencoding=utf-8
ASCII text, with CRLF line terminators
今天通过file命令查看 a.txt文件格式是否是unix格式,出现了如上。
最终的结果就是想让a.txt文件从windows的特殊符号转换为unix格式
#通过dos2unix a.txt命令将文件转换成功
dos2unix a.txt
查看文件格式
cat -v a.txt
没有评论