我有许多.zip文件和文件夹,其中一些具有相同的名称。 我将检查zip文件名和文件夹名是否相同。 我将zip文件复制到该文件夹中,然后删除该zip文件。
是否可以使流程自动化?
我找到了以下代码,但无法对其进行编辑:
@echo off
setlocal EnableDelayedExpansion
pushd "C:\New folder"
FOR %%G IN (*.zip DO (
FOR /F "tokens=1 delims= " %%a IN ("%%G") do (
set "outFolder=%%a Random Center"
for /D %%i in (*.*) do (
for /F "tokens=1 delims= " %%b IN ("%%i") do (
if "%%a"=="%%b" set "outFolder=%%i"
)
)
if not exist "!outfolder!" md "!outfolder!"
move "%%G" "!outfolder!"
)
)
popd
pause
它创建 Random Center 文件夹,并复制其中不需要的所有zip文件。
答案 0 :(得分:0)
@echo off
setlocal
pushd "C:\New folder" || exit /b 1
for %%A in (*.zip) do if exist "%%~nA" (
pushd "%%~nA" && (
move /y "..\%%~nxA"
popd
)
)
popd
pause
使用move
,因为不需要
copy
和del
压缩文件。
参数/y
将自动
不覆盖现有文件
提示。
初始pushd
更改当前目录
否则以errorlevel
1退出。
for
循环遍历每个zip文件名。
它检查文件名的名称(不带扩展名),
确实存在,应该是一个文件夹。
如果确实存在,请pushd
进入目录,然后
将父目录中的zip文件move
放入
当前目录。 popd
将还原到
上一个目录。
执行最后的popd
还原到初始当前目录。