[问题记录.诡异的循环文件夹“...“]名称为三个点的文件夹

问题描述:

在某文件服务器上查看某目录的占用空间大小(WinServer2019)。诡异地发现 —— 统计数据一直跳半天都没显示完,而文件数超级多、占用的磁盘空间大小远高于硬盘大小。

原因查找:

点目录进去看,发现有个以三个点“...”为名称的文件夹,点进去则相当于返回了其上级目录,不断循环。而且,该文件夹没法直接改名和删除。通过cmd命令也是如此。

在网上找到个解决办法删除,但会一并删除同级所有文件和文件夹,这肯定不行。当然,将要保留的文件和文件夹移动出去,删除后再移回来应该也能解决。

做下推断和验证:

  • 服务器没有中毒且没有异常访问记录,那么文件夹应该是我们程序创建出来的;
  • 编写程序验证,果然能通过 Directory.Create 创建出来
  • 通过程序是否可以删除呢?可以,但 Directory.Delete(Path.Combine(<DirPath>, "..."), true) 也会导致删除同级所有文件和文件夹。
  • 突发奇想,试了下通过下级文件夹再去删除 "<DirPath>\...\..." ,居然达到了预期效果!只会把"..."这个文件夹删除,同级文件和文件夹仍然保留。
  • 看到下这个文件夹的创建时间,似乎正是上次做漏洞扫描的时间......  好吧,知道怎么回事了

问题解决(C#代码实现):

1、删除名称为"..."的文件夹

string path = Path.Combine(<DirPath>, "...", "...");
Directory.Delete(path, true);

   备注1:Directory.Delete 方法的第二个参数需要指定为 true,表示连带删除子文件夹及文件,否则删除不成功。

   备注2:路径为"<DirPath>\...",但要多给一层目录。这样就不会删除掉<DirPath>下的其他文件夹和文件。

2、程序中增加目录及文件名的合法检查规则,避免类似漏洞

问题解决(不写代码的方式):用Windows系统的CMD命令行,删除三个点“...”的文件夹目录

cmd命令行执行(快捷键:win+r   输入"cmd"并回车)

rd <替换成实际文件目录>\....\ /s/q

例如:

rd c:\abc\....\ /s/q

注意1:删除要用4个点

注意2:删除做必要的备份

花絮:

问题原因找到了,问题也解决了,开心下班。但隔天VS重新打开解决方案,始终加载解决方案卡死。差点以为我机器挂了,重启无效,观察内存和cpu感觉也没占完。。。。。。缓了好半天,才猛地想起可能是"..."目录导致。果断删之,搞定。。。。。我了个x,Win和VS都跌在这个文件夹上了!

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
错误创建目录。这个错误通常出现在数据库启动或保存查询语句时。根据引用\[1\]和引用\[2\]的信息,这个错误可能是由于指定的目录不存在或无法创建导致的。在引用\[2\]中提到,在Navicat上解决这个问题的方法是通过编辑连接的高级设置来更改目录地址。同样,在引用\[3\]中也提到了类似的问题,当搭建数据库的备库时,可能会出现这个错误。在这种情况下,需要检查备库的参数文件是否正确配置,并确保指定的目录存在。如果目录不存在,可以尝试手动创建它。总之,错误创建目录的原因可能是由于目录不存在或权限不足导致的,解决方法是更改目录地址或手动创建目录。 #### 引用[.reference_title] - *1* *3* [诡异的错误:ORA-48141: error creating directory during ADR initialization--原来是单引号惹的祸](https://blog.csdn.net/qianglei6077/article/details/89011380)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [保存SQL语句,遇见Navicat for MySQL Error creating directory](https://blog.csdn.net/Fishermen_sail/article/details/116599560)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值