В любом случае удалить уникальные файлы с помощью файла .bat, используя содержимое другой папки в качестве ссылки?

Я пытаюсь удалить файлы из «FolderA», используя «FolderB» в качестве ссылки с пакетным файлом.

Например:

C: FolderAC: FolderB
Item1Item1
Item2Item2
Item3

Item3 удаляется в FolderA из-за того, что FolderB не имеет его

Прямо сейчас у меня есть файл .bat, в котором он может копировать содержимое из FolderB в FolderA, используя простую строку xcopy, но если FolderB получает обновление, в котором удаляется элемент, я не знаю, как удалить эти элементы с тем же или другим .bat файл.

1 ответ
1

@echo off && cd/d "F:2021-SUQ1631994FolderA" 

for %%i in (*)do if not exist "F:2021-SUQ1631994FolderB%%~nxi" (
     del/q /f "%%~fi") else copy/y "%%~i" "F:2021-SUQ1631994FolderB%%~nxi"

1. Войдите в папку, в которую вы хотите удалить или скопировать файлы:

@echo off && cd/d "F:2021-SUQ1631994FolderA" 

Используйте для файла внутри этой папки (FolderA)

2. Используйте для файла внутри этой папки (. FolderA), в котором перечислены ваши файлы:

for %%i in (*)do... 

3. Реализуйте условие if () else (), чтобы проверить, не существует ли того же файла в FolderB:

... if not exist "F:2021-SUQ1631994FolderB%%~nxi" (...

4. Для каждого условия действуйте соответственно, удаляя или копируя файл в цикле:

 del/q /f "%%~fi") else copy/y "%%~i" "F:2021-SUQ1631994FolderB%%~nxi"

  • Большое спасибо! Специально для ссылок читать! Я не мог оценить этот ответ больше, чем я.

    — Канон
    3 часа назад

  • @Kanon Спасибо за тестирование, комментарии и чтение ссылок!

    — Это был не я
    3 часа назад

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *