GBK编码文件操作
本文介绍Linux上工作中针对GBK编码文件处理的相关工具使用技巧。
Sublime Text 自动加载GBK编码支持
问题
当使用ConvertToUTF8插件实现GBK编码支持时,每次打开一个GBK编码的文件前,Sublime Text都会提示一个编码选择框,例如:
当需要打开的GBK编码文件很多时,每次都要选择编码就会影响效率及打断思维,因此最好能够直接识别成GBK编码而不需要选择。
解决
打开~/.config/sublime-text-3/Packages/ConvertToUTF8/ConvertToUTF8.py
文件,注释掉def check_encoding(view, encoding, confidence):
中的:
即改成如下形式:
这样每次打开GBK编码就会自动识别,而不用手动选择编码了。
系统编码为UTF-8时的GBK文件搜索
当操作系统的locale为UTF-8时,此时不能用grep, ack等直接搜索GBK编码的文件。
方法一
在模拟终端(Konsole, GNOME Terminal)下执行export LC_CTYPE="zh_CN.GBK"
,并把终端的编码设置为’GBK’,例如下图在Konsole中设置编码:
方法二
以 LC_ALL=zh_CN.GBK konsole 方式 打开模拟终端。
方法三
基于 qt5 版的 konsole 不支持方法二的方式,需改成如下方式:
- 新建profile,并把配置中的默认编码改成 gbk
- 运行命令:
LC_CTYPE="zh_CN.GBK" konsole --profile gbk
1234#!/usr/bin/bash#LC_ALL=zh_CN.GB18030 konsole -e "/usr/bin/bash"LC_CTYPE="zh_CN.GBK" konsole --profile gbk -e "/usr/bin/bash"#LC_CTYPE="zh_CN.GBK" konsole --profile gbk
qgit 显示GBK编码文件差异时乱码
在命令行下切换到项目的根目录执行: