linux下查看文件编码格式以及转换格式教程

检查编码:file -i /path/to/file。
转码: iconv -f from_enc -t to_enc /path/to/file -o /path/to/output。
验证输出:file -i /path/to/output。

Linux 命令行乱码原因及解决方案:设置字符编码解决乱码问题

说实话,乱码的Linux命令行挺烦人的,但说白了,就是编码问题。
当我在煤矿当奴隶时,我曾多次遇到过这种情况。
当时我花了很长时间调试,最后发现系统脚本和终端设置不匹配。

我们举一个之前在 Ubuntu 中遇到过的例子。
默认的系统音译模式是POSIX。
这就是为什么我打开 gnome 终端,它显示的是 UTF-8 的默认中文。
这样的构图直接插值,确实无法完全解释提示命令。
我当时就担心得头撞到屏幕了,最后发现自己先改语言系统了。

你会看到这种问题一步步解决。
首先,需要使用local命令查看系统当前的配置情况。
比如:LANG=POSIX 我发现那个时候,这肯定是不可能的。
需要使用 sudo locale-gen zh_CN.UTF-8 生成中文语言包,然后 sudo update locale LANG=zh_CN.UTF-8 更改默认语言。
这一步首先很关键,但是不仅要改变命令行环境,还需要在~/.bashrc中写入LANG=zh_CN.UTF-8 ,否则下次打开新终端就没用了。
航站楼位置需单独完成。
某些终端(例如 PUTTY)要求您手动更改脚本模式。
之前我用PUTTY连接服务器的时候,在“Windows→翻译”中选择了utf-8 ,不然中文命令就会变成一堆插值字符。
您应该知道这一点,尤其是在远程连接时。

教区的性格也容易出现问题。
上次我在新装的CentOS系统上,直接跑yum update就卡住了。
后来发现是没有安装中文语言包。
我快速 sudo yum install glibc-community,然后 sudo localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8 添加中文支持。
这样,中文命令行就可以正常显示了。
最糟糕的是,有时即使更改设置后,终端仍然会进行插值。
这时需要检查终端是否屏蔽了旧的设置。
我有一个习惯。
更改编码后,首先将源~/.bashrc加载到新函数中,然后systemctl restart gdm重新启动显示服务。
这每次都能奏效。

当他这么说时,他们需要耐心。
我有一个朋友第一个这么做的。
系统的代码一改再改,最后系统崩溃了。
所以建议初学者在第一台虚拟机上尝试一下。
如果这不起作用,只需使用 echo "export LANG=en_US.UTF-8 " >> ~/.bashrc 回退到英语环境。
至少一开始你可以正常工作。