我把楼主的问题直接写给AI了
AI和我的思路好像差不多,原来我就是AI You 写windows批处理的问题
情况是这样的 安装一个软件的不同版本 会在一个文件夹下生成不同的文件夹
比如在 D:\abc中 不同版本启动时 会在这个文件夹下用版本号建立文件夹 比如
D:\abc\5.0
D:\abc\6.0
D:\abc\7.0
根据软件操作 有时候会生成一些文件在这个版本号文件夹下 有时候只是空的版本号文件夹
请问 如何判断文件夹abc 是否为空(即不包含5.0 6.0 7.0任一个文件夹 存在任意一个空的版本号文件夹为非空) 判断为空时 则删除文件夹abc 同时建立文件夹D:\123 判断为非空时 则建立D:\efg
ChatGPT您可以使用以下代码来实现:
@echo off
set "folder=D:\abc"
set "empty=true"
for /d %%f in ("%folder%\*") do (
set "empty=false"
)
if %empty%==true (
rem 删除文件夹abc
rmdir "%folder%"
rem 创建D:\123文件夹
mkdir "D:\123"
) else (
rem 创建D:\efg文件夹
mkdir "D:\efg"
)
首先,将您想要判断的文件夹路径保存在变量folder中。然后,我们将empty变量设置为true,以便用于检查文件夹是否为空。 我们接着使用for循环遍历该路径下所有子文件夹,并且如果找到任何一个非空文件夹,则将empty变量设置为false。 最后,我们使用if语句来根据empty变量的值分别执行不同的操作:当empty变量的值为true时,删除文件夹并创建新文件夹;否则,直接创建新的文件夹。 请注意,在代码中,我使用了与您示例相同的文件夹名称和路径。如果您的实际情况略有不同,请相应地更改代码。
|