You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用给出的ExecWait脚本删除Default文件夹内除Bookmarks外的文件

修正方案

原代码失效原因

  • cmd 执行单行命令串时会提前一次性替换所有%包裹的变量,你在同一行里先set定义变量再用%读取的操作无法拿到刚设置的变量值
  • NSIS 脚本中需要转义%符号,要传递给 cmd 的%必须写为%%才不会被 NSIS 提前解析处理
  • 原目录匹配规则缺少反斜杠,%sourcedir%*无法正确匹配Default文件夹下的内容,需要改为%sourcedir%\*

修正后可直接运行的代码

ExecWait '"$SYSDIR\cmd.exe" /c "SETLOCAL ENABLEDELAYEDEXPANSION & SET "sourcedir=$LOCALAPPDATA\Google\Default" & SET "keepfile=Bookmarks" & FOR %%a IN ("!sourcedir!\*") DO IF /i NOT "%%~nxa"=="!keepfile!" DEL /f /q "%%a""'

补充说明

如果需要同时删除Default目录下除了Bookmarks之外的子目录,可以将FOR命令调整为FOR /d %%a IN ("!sourcedir!\*")搭配RD /s /q命令实现,和上面的文件删除命令组合使用即可覆盖全目录清理需求。

内容的提问来源于stack exchange,提问作者john

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 15:24:03