该死的CodeX删了我几百G文件!

事情的起因总是如此悲伤——

• Ran $workspace = (Resolve-Path '.').Path; $target = (Resolve-Path '.\.cache').Path; if (-not $target.StartsWith($workspace, [System.StringComparison]::OrdinalIgnoreCase)) { throw "Refusing to delete path outside workspace:           

  │ $target" }; & takeown /f $target /r /d y; & icacls $target /grant Administrators:(OI)(CI)F /t /c; & cmd /c "rd /s /q \"$target\""; Write-Output "exists=$(Test-Path -LiteralPath $target)"; Get-ChildItem -Force                       
  └ ERROR: The current logged on user does not have ownership privileges on                                                                                                                                                                
           the file (or folder) "C:\York\Works\Study\llm-exp\Embedding-Task\Step-2\.cache".                                                                                                                                                
    … +5013 lines                                                                                                                                                                                                                          
    \PROGRA~1\dotnet\packs\MICROS~2.REF\100~1.0\ref\net10.0\Microsoft.Extensions.Primitives.xml - Access is denied.                                                                                                                        
    \PROGRA~1\dotnet\packs\MICROS~2.REF\100~1.0\ref\net10.0\Microsoft.Extensions.Validation.dll - Access is denied.

我在让CodeX帮我把uv缓存移到全局的时候,CodeX顺手问了我一下要不要把当前WorkSpace的UV缓存清一下,然后就把我几百G的C盘文件顺手删掉了。至于咋发现的?我TM项目是Python,它删到nuget了,我又不是瞎子。

当然,你要说我蠢,其实我没那么蠢(但是还是很蠢)。

我没开自动批准,在CodeX要求执行命令的时候,我还特地看了一下,嗯,确实是我的WorkSpace,最坏的结果也就是整个论文的目录被扬了,无所谓的,可以复现,都不值钱,。

结果:最后给我C盘删了,三角洲干没了,Steam干没了,游戏全删了,输入法也删了(删了一半,用不了也卸载不了),现在我还在用tm的微软输入法。

好在重要数据还没被删,问题不大。

中途和GPT5.4讨论了挺久,大概搞明白了为啥被删了,鉴于站内无法直接发AI内容,我就简单概括一下。

  • 文件树不是封闭的,修改和删除并不是到目录顶就结束了
    举个例子,我使用C:\York\Works这个路径执行删除命令,佬友觉得最坏的结果是什么?是不是直接干掉整个Works文件夹?No!理论上可以干掉整个硬盘!在操作系统里面,有个东西叫链接,通俗来讲,就是我在加链接的情况下,如果使用了递归删除,理论上我可以删到任何地方,这个就是相对路径的威力了。

事已至此,今晚肯定是没三角洲玩了,哭也没地方哭了,但是我觉得我这种情况并不是特例,所以我特地让AI写了一份安全删除守则。鉴于站内不给发AI内容,所以我粘贴到只读的剪贴板里面,大家可以仿照一下或者自取,总的来说还是不建议大家开自动批准,吃一堑长一智,要是重要数据被干没了就寄了。

63 个赞

又一个受害者…

又一个windows受害者

5 个赞

受害者+1 :rofl:

C盘瘦身

9 个赞

:distorted_face:这codex怎么这么坏啊

1 个赞

我跑完脚本一看,C盘凭空多出来了几百G空间 :sweat_smile:

又一个 :distorted_face:,上次gpt也说给我清缓存我都不敢让它干,现在涉及删除、清除的我都不让干

受害者+1

规则怪谈:永远不要让codex在win上清理东西!

20 个赞

规则里面禁止它处理到任何有关,清理,删除之类的关键词,看到必须要告诉我。然后我的文字也避免任何有关,清理,清除,删掉之类的话。

我也怕 所以我在想怎么做一个webdev同步备份 重要的都备份到云端

断舍离,恭喜恭喜

1 个赞

使用wsl吧

上次用codex跑一个poe交换机,让他写配置,结果给我把配置删了,打算重新写,可是删了就没网了,还好因为没save,重启之后就好了

1 个赞

目前好像没见过linux或者mac环境下被干崩的?只有win

太惨了 :sob:

25 个赞

可以发的,不过是要截图的形式

window下一定使用wsl作为执行环境