Диктовка функции копирования для всех файлов n-1 раз, затем функция перемещения для n-го раза - PullRequest
0 голосов
/ 01 июля 2019

Для школьной работы я сделал пакет, который может переместить определенное количество файлов определенного типа из одного каталога (назовем его dir 1) в другой (dir 2), с помощью этого фантастическогосайт.Теперь задача улучшена, и мне нужно найти способ создать пакет, который будет работать на dir 2, и выполнить копирование всех файлов из предоставленных каталогов (Dir 3,4,5,6 ....n-1) и в каталоге n переместите все файлы так, чтобы все перемещенные файлы больше не были в каталогах 1 и 2. Я даже понятия не имею, как к этому подойти.Хотя я предполагаю, что это должна быть довольно короткая и простая партия, это немного больше, чем нас учили.Теперь, как и в первом пакете, который я покажу вам здесь, схема должна остаться прежней:% 1 - исходная папка% 2 - папка назначения% 3 - количество файлов% 4 - фильтр. Вот первый пакетЕсли бы кто-нибудь мог помочь мне создать этот второй, я был бы очень благодарен.

@echo off
SETLOCAL EnableDelayedExpansion
set movedFiles=0
if [%4] EQU [] goto regular
:special
for /R  "%1" %%G in (%4) do (
    echo moving "%4"... "%%G"
    move /Y "%%G" "%2"
    set /a movedFiles+="1"
    if !movedFiles! EQU %3 GOTO endOfCopy
)
GOTO endOfCopy
:regular
for /R  "%1" %%G in (*) do (
    echo moving... "%%G"
    move /Y "%%G" "%2"
    set /a movedFiles+="1"
    if !movedFiles! EQU %3 GOTO endOfCopy
)
:endOfCopy
echo Done, %movedFiles% files Where copied successfully
ENDLOCAL
...