我认为这应该是一种简单的方法,但我无法弄清楚如何。
现状: 客户将zip文件发送到我们的SFTP文件夹,通过使用一些简单的批处理文件,它从SFTP复制zip文件,解压缩并继续执行必须完成的其他工作。
我需要什么:
里面的zip文件有一个文件夹(主要问题是它可以随机命名)。我需要的只是一个BATCH文件,它将复制当前(作业)位置中任何现有文件夹中的所有文件。
修改 当前的方法非常糟糕(但它很稳定且有效),我只需在批处理文件中更改文件夹的名称,一切运行顺畅。方法工作正常,但我想完全自动化。
答案 0 :(得分:0)
您可以使用仅获取目录的DIR /A:D
遍历解压缩的归档目录中的目录。如果找到,这将处理多个子目录。
SETLOCAL ENABLEDELAYEDEXPANSION
SET "EXTRACTED_DIR=C:\path\to\extracted\archive"
FOR /F "usebackq tokens=*" %%d IN (`DIR /A:D /B "%EXTRACTED_DIR%"`) DO (
SET "THE_DIR=%%~d"
ECHO Do something with mystery directory "%EXTRACTED_DIR%\!THE_DIR!"
)