Я пытаюсь создать пакетный файл, в который отправляю папку, используя right-click
=> sendto
, создавая две новые папки в том же каталоге, что и папка, которую я отправил в пакетный файл.Две новые папки будут копиями папки, которую я отправил в пакетный файл, названный по имени двух переменных ввода пользователя, скажем, A и B. Я хочу, чтобы подпапки в этих двух папках также добавляли к ним A и B.Test (Existing Folder sent to batch file)
-> TestA(New Folder) and TestB(new folder)
.Затем TestA(new folder)\M1234567.D(subfolder)
-> TestA(new folder)\M1234567A.D(renamed subfolder)
и то же самое происходит с TestB(new Folder)
и его подпапками.
Пример: A
и B
добавляются в папку test
, чтобы стать testA
иtestB
.Мне нужно, чтобы все содержимое папки также было скопировано в две другие папки.У меня эта часть работает с robocopy
.Часть, с которой я борюсь, - это добавление всех подпапок в двух новых папках, чтобы добавить ту же букву, что и добавленная родительская папка.
Так, например, значение \testA\M1234567.D
было изменено на \testA\M1234567A.D
и testB\M1234567
изменено на testB\M1234567B.D
.
Подпапки в двух вновь скопированных папках будут содержать подпапки с .D в конце.Поэтому, чтобы удостовериться, что это единственные элементы, в которые добавляются входные данные, я специально добавил .D в конце переименования.
Вот что я сделал до сих пор:
@ECHO off
cd /d %1
setlocal EnableDelayedExpansion
set appendLetter=ABCDEFG
SET /p appendLetter1="Enter the first letter you wish to append to the end of the Data Files: "
SET /p appendLetter2="Enter the second letter you wish to append to the end of the Data Files: "
if NOT "%appendLetter1%"=="ABCDEFG" (
ROBOCOPY "%1" "%1%appendLetter1%" /mir
ROBOcopy "%1" "%1%appendLetter2%" /mir
cd /D D:\MassHunter\Data\%1%appendLetter1%
Rename "???????.D" "???????%appendLetter1%.D"
cd /D D:\MassHunter\Data\"%1%appendLetter2%"
Rename "???????.D" "???????%appendLetter2%.D"
)