执行docker scan漏加末尾.生成多余~目录 如何安全删除不影响主目录
安全删除误生成的~目录方案
一、命令行删除(最便捷安全的操作)
首先必须先确认目标是当前目录下的~目录,而非用户主目录:
- 执行校验命令:
ls -ld ./~,输出结果中路径如果包含你当前的工作路径,即可确认是要删除的目标 - 优先使用最安全的删除方式:
- 如果该目录是空目录,执行
rmdir ./~即可,rmdir仅能删除空目录,即使操作失误也不会删除有内容的目录 - 如果目录包含内容,执行
rm -rf ./~,必须保留./前缀,输入后可以按Tab键补全路径,确认补全的是当前目录下的~再回车执行
- 如果该目录是空目录,执行
二、Python删除方案(可控性更高,完全避免误删主目录)
可以用Python代码实现多重校验后删除,完全不会误操作到主目录,代码示例:
import shutil from pathlib import Path # 确认当前工作目录 current_dir = Path.cwd() # 定位当前目录下的目标~目录 target = current_dir / "~" # 三层校验:存在、是目录、父目录就是当前工作目录 if target.exists() and target.is_dir() and target.parent == current_dir: print(f"确认删除目标:{target}") shutil.rmtree(target) print("删除完成") else: print("未匹配到符合条件的目标,无删除操作执行")
三、关键注意事项
- 绝对禁止直接执行
rm -rf ~,不带./前缀的~默认指向当前用户的主目录,执行后会清空所有个人数据 - 执行任何删除操作前,都可以先执行
ls ./~确认路径是否为当前目录下的异常目录,确认无误后再操作 - 极端稳妥方案:先执行
mv ./~ ./temp_trash_2024,确认所有正常文件都无异常后再删除重命名后的目录,完全避免误碰主目录风险
内容的提问来源于stack exchange,提问作者Mark McWiggins
相关产品推荐
相关产品推荐

