IF 多个条件
IF multiple conditions
F.e。用户桌面上有一些文件夹。我想删除此文件夹中除快捷方式之外的所有文件。有两种类型的快捷方式 - 某些 local\network 资源和某些站点的快捷方式。
"shortcuts on some local\network resources" 有 .lnk 扩展名
"shortcuts to some sites" 有 .url 扩展名
我已经already found如何单独完成这个任务
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]
...
完全没有必要使用 for-loop within your forfiles /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"
F.e。用户桌面上有一些文件夹。我想删除此文件夹中除快捷方式之外的所有文件。有两种类型的快捷方式 - 某些 local\network 资源和某些站点的快捷方式。
"shortcuts on some local\network resources" 有 .lnk 扩展名
"shortcuts to some sites" 有 .url 扩展名
我已经already found如何单独完成这个任务
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]
...
完全没有必要使用 for-loop within your forfiles /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"