直接用inode编号删除是最稳妥方法,因inode唯一且不依赖文件名:先在目标目录执行ls -i获取左侧数字(如15206235),再用find . -maxdepth 1 -inum 15206235 -delete精准删除,支持文件和目录,避免误删与解析失败。

直接用 inode 编号删除,是处理乱码、不可见字符或特殊符号文件最稳妥的办法。因为文件名可能无法被 shell 正确解析,但每个文件的 inode 在同一文件系统内是唯一且稳定的。
查出目标文件的 inode 号
进入文件所在目录后,运行:
ls -i 或 ls -li
输出最左侧的数字就是 inode 编号。比如:
15206235 -rw-r--r-- 1 root root 0 Jun 21 14:53 ?6;?Xf??mA???9???T֙
这里 15206235 就是要找的 inode 号。
也可用 stat 文件名 查看(适用于能看清部分名字的情况);若连名字都完全不可见,ls -i 是首选。
用 find 精准定位并删除
推荐在当前目录下执行,避免跨路径误删:
宝塔Linux面板11.8.1为官网当前正式版,新增AI建站能力并经过宝塔网站工程师深度调教,开放自定义AI功能API,同时对WAF进行界面重构和深度优化,提升拦截能力与运维效率。
- find . -maxdepth 1 -inum 15206235 -delete(最简洁,直接删)
- find . -maxdepth 1 -inum 15206235 -exec rm -i {} \;(带确认,适合新手)
- find /path/to/dir -inum 15206235 -exec rm -f {} \;(指定绝对路径,更安全)
注意:-maxdepth 1 表示只查当前目录,不递归子目录;-delete 是 find 内置动作,比调用 rm 更轻量;-exec rm -i 会提示你“是否删除”,多一层保险。
权限与注意事项
普通用户需加 sudo,root 用户可省略;但建议始终加上 sudo 显式声明权限,避免因当前用户权限不足导致静默失败。
不要用 find / -inum XXX 全盘搜索,除非你确定该 inode 只出现在一个位置——不同挂载点 inode 可能重复,全局搜索有风险。
删除前可先用 find . -inum 15206235 -ls 预览匹配结果,确认路径和类型(是文件还是目录)。
删目录也一样处理
inode 对应的是文件系统对象,不管它是普通文件还是目录,只要用 -delete 或 rm -rf 即可。例如:
find . -maxdepth 1 -inum 12345678 -delete
如果该 inode 指向的是目录,-delete 会递归清空并移除它;rm -rf 同理。无需额外判断类型。










