共计 556 个字符,预计需要花费 2 分钟才能阅读完成。
由于 php 大势所趋,所以接触 Linux 服务器的机会越来越多。不同于 Windows 服务器,Linux 服务器只支持数字、英文等字符,对中文字符没办法识别。所以导致我们打包上传文件解压之后出现中文乱码文件和文件夹。网上有很多解决的办法,但是今天亲测用 find 命令能快速删除乱码的文件和文件夹,所以跟大家分享一下。
首页进入乱码文件所在文件夹
使用 ls - i 命令找到文件或文件夹的节点编号
前面的就是节点号了,接下来使用 find 命令查询并且删除
-inum 指根据节点号查询;-delete 顾名思义就是删除操作了。这样就成功删除乱码文件了,值得注意的是,此方法只适用于删除文件或空的文件夹。
对于文件夹,尤其是非空的文件夹,上面的方法就不适用了,要用到另外的参数来实现,首先相同的是查看乱码文件夹的节点号
接下来使用 find 命令删除
虽然提示我们找不到此文件或文件夹,但其实已经表明删除了。-exec 作用是查找后执行命令,其中 {} 代表前面查询到的结果,空格 +\; 是结束符,其它就不说了。-exec 后可以跟任何常用命令,因此这方法不但适用于文件夹,文件也可以。
怎么批量删除呢?其实很简单,用 for 就好了
文件
文件夹
$n 是变量名,与 for 后面定义的一致,其它没啥好说的,适用其它操作。
后记
不仅仅是删除,其它基本操作如改名、移动、复制等都适用的。
正文完
星哥说事-微信公众号