У меня есть командная строка, которая копирует файлы из папки A в папку B:
copy A\* B\
Теперь я хотел бы удалить все файлы в B, которые присутствуют в A, безрекурсивно. Я могу перечислить файлы в A следующим образом:
dir /b /a-d A
С выводом:
f0.txt
f1.txt
f2.txt
Вот псевдокод того, что я хотел бы сделать:
foreach $1 in <dir /b /a-d A output>:
del B\$1
Есть ли синтаксис командной строки Windows, который будет выполнять команду, используя вывод другой команды в качестве ввода? Я знаю об операторе конвейера (|), но не знаю, как его можно использовать для выполнения этой задачи. Любая помощь будет оценена.
Ограничение: в Windows 7 по умолчанию доступны только команды.