【发布时间】:2020-03-09 14:12:25
【问题描述】:
我正在尝试将两个 FOR 循环合二为一。
这是我的代码:
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
set BackupDest=D:\backup
for /D %%I in ("%HomeDrive%\users\*") do if exist "%BackupDest%\%%~nI\" (
xcopy "%HomeDrive%\users\%%~nI\Desktop" "%BackupDest%\%%~nI\Desktop\" /e /i /y
xcopy "%HomeDrive%\users\%%~nI\Documents" "%BackupDest%\%%~nI\Documents\" /e /i /y
)
for /f "tokens=*" %%I in ('dir /a:d-h /b "%HomeDrive%\users\*" ^| findstr /b /e /i /l /v /g:"%~dp0\bin\exclude_users.txt"') do if not exist "%BackupDest%\%%~nI\" (
echo Destination folder of the user %%~nI is missing
)
我确定在这种情况下我们是否可以这样做?
如果是,我该如何实现?
任何帮助都会非常有帮助。
【问题讨论】:
标签: windows for-loop batch-file if-statement