1

Fe 用户桌面上有一些文件夹。我想删除此文件夹中除快捷方式之外的所有文件。有两种类型的快捷方式 - 一些本地\网络资源和一些网站的快捷方式。

“某些本地\网络资源的快捷方式”具有 .lnk 扩展名

“某些网站的快捷方式”具有 .url 扩展名

已经找到了如何单独完成这项任务

forfiles /p "%userprofile%\Desktop\folder" /s /m *.* /c "cmd /c for %G in (@path) do @if /I [%~xG] neq [.lnk] del /F /Q %G"

forfiles /p "%userprofile%\Desktop\folder" /s /m *.* /c "cmd /c for %G in (@path) do @if /I [%~xG] neq [.url] del /F /Q %G"

但是如何将这些条件组合成一个字符串呢?像if /I [%~xG] neq [.lnk] AND [.lnk]...

4

1 回答 1

3

绝对没有必要在你的命令中使用 /C

尝试任何一个;

ForFiles /P "%UserProfile%\Desktop\folder" /S /C "Cmd /C If /I Not @ext==\"lnk\" If /I Not @ext==\"url\" Del /A /F @path"

或使用帮助信息中显示的十六进制代码,可在命令提示符处输入,forfiles /?

ForFiles /P "%UserProfile%\Desktop\folder" /S /C "Cmd /C If /I Not @ext==0x22lnk0x22 If /I Not @ext==0x22url0x22" Del /A /F @path"
于 2019-07-05T12:49:12.963 回答