linux下删除乱码文件

 

根据inode 来修改或删除linux 下乱码的文件

1. 创建测试文件:
    touch 1?.txt

2. 查询inode :
[oracle@test]$ ll -i
total 14694452
17956913 -rw-r--r-- 1 oracle oinstall          0 Jan 18 20:24 1?.txt

3. 修改测试文件名:
find . -inum 17956913 -exec mv {} file.txt \;

4. 检查修改结果
[oracle@test]$ ll
total 14694452
....
-rw-r--r-- 1 oracle oinstall          0 Jan 18 20:24 file.txt

记录:删除乱码的文件可使用 find . -inum 17956913 -exec rm {} \;




不同于windows服务器,linux服务器只支持数字、英文等字符,对中文字符没办法识别。所以导致我们打包上传文件解压之后出现中文乱码文件和文件夹。网上有很多解决的办法,但是今天亲测用find命令能快速删除乱码的文件和文件夹,所以跟大家分享一下。

首页进入乱码文件所在文件夹

使用ls -i命令找到文件或文件夹的节点编号

巧用find命令删除Linux下乱码文件及文件夹

前面的就是节点号了,接下来使用find命令查询并且删除

巧用find命令删除Linux下乱码文件及文件夹

-inum指根据节点号查询;-delete顾名思义就是删除操作了。这样就成功删除乱码文件了,值得注意的是,此方法只适用于删除文件或空的文件夹。

对于文件夹,尤其是非空的文件夹,上面的方法就不适用了,要用到另外的参数来实现,首先相同的是查看乱码文件夹的节点号

巧用find命令删除Linux下乱码文件及文件夹

接下来使用find命令删除

巧用find命令删除Linux下乱码文件及文件夹

虽然提示我们找不到此文件或文件夹,但其实已经表明删除了。-exec作用是查找后执行命令,其中{}代表前面查询到的结果,空格+\;是结束符,其它就不说了。-exec后可以跟任何常用命令,因此这方法不但适用于文件夹,文件也可以。

怎么批量删除呢?其实很简单,用for就好了

文件

巧用find命令删除Linux下乱码文件及文件夹

文件夹

巧用find命令删除Linux下乱码文件及文件夹

$n是变量名,与for后面定义的一致,其它没啥好说的,适用其它操作。

后记

不仅仅是删除,其它基本操作如改名、移动、复制等都适用的。




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值