Linux下如何删除乱码文件名的文件
更新时间:2026年11月01日 10:21:07 作者:崔杰城
在Linux系统中,当文件名变成乱码或特殊字符时,常规删除命令会失效,本文教你使用find命令安全删除这些文件,并介绍如何排除指定目录,同时对比Bash extglob方法的局限性,帮你轻松解决文件删除难题
Linux删除乱码文件名的文件
Linux下经常会出现有文件的名称变为了特殊字符或乱码,导致无法删除的情况,这个时候我们可以使用一些方法删除,
比如
在当前目录下,删除除了 XXX 目录以外的所有内容(包括名称乱码的文件),可以用:
find . -mindepth 1 ! -name XXX ! -path './XXX/*' -exec rm -rf {} +更推荐先预览一下会删哪些:
find . -mindepth 1 ! -name XXX ! -path './XXX/*' -print
确认没问题后再执行删除:
find . -mindepth 1 ! -name XXX ! -path './XXX/*' -exec rm -rf {} +含义
-mindepth 1
表示不匹配当前目录 . 本身。
! -name XXX ! -path './XXX/*'
表示保留 XXX 目录以及 XXX 目录下的所有内容。
也可以用 Bash 的方式:
shopt -s extglob rm -rf !(XXX)
但这个方式依赖 Bash 的 extglob,而且对隐藏文件处理不如 find 方式稳妥。
建议用 find。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
在Ubuntu 24.04上安装Nacos并配置为开机自启的详细步骤
Nacos 是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台,在本文中,我将详细介绍如何在 Ubuntu 24.04 系统上安装 Nacos,并将其配置为开机自启服务,需要的朋友可以参考下2025-07-07
BT宝塔Linux服务器管理助手架设VPS面板(安装及初始设置应用)
这篇文章主要介绍了BT宝塔Linux服务器管理助手架设VPS面板也是就是BT宝塔助手安装及初始设置应用演示,需要的朋友可以参考下2017-04-04


最新评论