我有一个带有三个选择选项的批处理文件。如果选择A
,则应该将一个名为Files
的文件夹(与批处理文件位于同一根目录中)复制到C:\
驱动器的根目录中。我似乎无法理解为什么%SystemDrive%
变量不起作用并想指向C:\Windows\system32
。
有什么想法吗?
run.bat
@echo off
set /a _Debug=0
::==========================================
:: Get Administrator Rights
set _Args=%*
if "%~1" NEQ "" (
set _Args=%_Args:"=%
)
fltmc 1>nul 2>nul || (
cd /d "%~dp0"
cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~dp0"" && ""%~dpnx0"" ""%_Args%""", "", "runas", 1 > "%temp%\GetAdmin.vbs"
"%temp%\GetAdmin.vbs"
del /f /q "%temp%\GetAdmin.vbs" 1>nul 2>nul
exit
)
@ECHO OFF
TITLE WINDOWS AUTOMATION UTILITY
COLOR 02
CLS
ECHO.
ECHO THIS UTILITY HELPS AUTOMATE WINDOWS 10
ECHO ======================================
ECHO.
:MENU
ECHO [A] Copy 'Files' directory from installation media to System Drive
ECHO [B] Set default Start menu for all users
ECHO [C] EXIT Remove bloatware apps from Windows 10
choice /C ABC /M "Select Mode:" /N
IF %ERRORLEVEL% EQU 3 goto End
IF %ERRORLEVEL% EQU 2 goto B
IF %ERRORLEVEL% EQU 1 goto A
::
:B
CLS
ECHO THIS IS B
TIMEOUT 2 >nul
CLS
GOTO MENU
::
:A
CLS
ECHO THIS IS A
TIMEOUT 2 >nul
CLS
ROBOCOPY "%~dp0Files" %SystemDrive% /MT
GOTO MENU
::
:End
CLS
ECHO You've reached the end
PAUSE
EXIT 0
自动复制结果
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : 23 March 2020 00:15:09
Source : D:\Users\Will\Documents\IT Projects\Windows\Windows 10 Image\Files\
Dest : C:\Windows\system32\
Files : *.*
Options : *.* /DCOPY:DA /COPY:DAT /MT:8 /R:1000000 /W:30
------------------------------------------------------------------------------
更新
@ Durry42
在命令提示符中键入Set
会返回C:\
@aschipfl
我想我尝试在%SystemDrive%
的末尾添加反斜杠,但没有区别。