-
Linux系统查找替换非UTF-8编码文件的方法
- 时间:2024-11-23 01:59:11
大家好,今天Win10系统之家小编给大家分享「Linux系统查找替换非UTF-8编码文件的方法」的知识,如果能碰巧解决你现在面临的问题,记得收藏本站或分享给你的好友们哟~,现在开始吧!
UTF-8是Linux系统下的一种可变长度的字符万国码,使用UTF-8码就可以支持多种语言。但是某些文件并不是UTF-8编码的,这个时候我们可以用命令来查找替换非UTF-8码,下面就来介绍一下Linux系统查找替换非UTF-8编码文件的方法。
开始之前,请先安装enca这个软件包。enca是Linux等系统下用来查看文件编码和转换文件编码的工具。
下面一行Linux命令能够查找当前目录下所有文件中,哪些文件不是UTF-8编码。我对文件加了些限制,用find命令时候,排除了所有目录下的.svn目录,且只查找后缀为.php的文件。
命令1:
jw@~/sqlite>
find 。 ! -iregex ‘.*\.svn.*’ -type f -name ‘*.php’ -exec bash -c “enca -L zh_CN {}|grep GB2312 》 /dev/null && echo {}” \;
./sqlite_utility.php
./sqlite_result.php
./sqlite_forge.php
./sqlite_driver.php
既然找到了这些非UTF8编码的文件,接下来再用一条命令将他们都转换成UTF8编码。
命令2:
jw@~/sqlite>
find . ! -iregex ‘.*\.svn.*’ -type f -name ‘*.php’ -exec bash -c “enca -L zh_CN {} | grep GB2312 》/dev/null && enconv -L zh_CN -x UTF-8 {}” \;
当你用命令2 全部转换完成后,如果你期待命令1的输出为空,那么你就错了。实际上英语字母的utf8编码和ASCII编码是一样的。当一个全是英文字母的文件用UTF8 w/o BOM编码保存,那么enca会识别他是一个ACSII编码的文件。所以,你猜到了,命令2做了一些无用功。
以上就是Linux系统查找替换非UTF-8编码文件的方法了,这样一来就不用担心Linux文件不是UTF-8编码而无法显示其他语言了。
以上就是关于「Linux系统查找替换非UTF-8编码文件的方法」的全部内容,本文讲解到这里啦,希望对大家有所帮助。如果你还想了解更多这方面的信息,记得收藏关注本站~
『本♂文②来源Win10系统之家www.ghost580.net,不得自行转载,违者必追究!』
相关文章
-
UTF-8是Linux系统下的一种可变长度的字符万国码,使用UTF-8码就可以支持多种语言。但是某些文件并不是UTF-8编码的,这个时候我们可以用命令来查找替换非UTF-8码,下面就来介绍一下Linux系统查找替换非UTF-8编码文件的方法。
开始之前,请先安装enca这个软件包。enca是Linux等系统下用来查看文件编码和转换文件编码的工具。
下面一行Li... -
vim是Linux系统下常用的文本编辑,通过使用多种shell命令能够实现多文件的查找和替换,那么具体会使用到那些命令呢?下面小编就给大家介绍下Linux系统vim多文件查找和替换的方法。
在linux平台上,有很多优秀的shell命令组合来做多文件查找/替换,比如这些命令:find,sed,grep,awk,perl。但其他平台比如windows上就没那么方便了,这时候... -
当你在Linux下查看windows文件的时候,时常会出现乱码或无法阅读的情况,这就涉及到文件字符集编码的问题,只需将文件字符集进行转换,就能够在Linux下查看windows文件,一起来了解下吧。
网站有一些课件资源是从windows传到Linux服务器,在windows下文件夹编码方式为GBK,而浏览器默认的编码模式为UTF-8(服务器默认编码也为UTF-8),如此,... -
如果不了解Linux系统线上操作替换文件的话,很容易导致在cp时出现textfilebusy错误提示,所以掌握Linux系统线上操作替换文件是很重要的,下面随小编一起来了解下吧。
最近发现很多哦鞥有不知道线上操作替换文件的要点。所以系统之家的小编又整理了一下,以便你有个了解。
线上替换一个正在运行进程的文件时(包括二进制、动态库、需要读取的资源文件等)。应避免...