Як скопіювати файл у кілька папок у Windows 10

Перетягування об’єктів мишкою значно спрощує процеси копіювання та переміщення файлів чи директорій. Якщо ви маєте потребу скопіювати певний файл в декілька різних місць, затисніть клавішу Ctrl та перетягніть його до кожної цільової папки по черзі. Цей спосіб, хоч і є досить простим, може виявитися занадто часозатратним, особливо якщо потрібно продублювати файл у велику кількість директорій. Для таких випадків, коли потрібно скопіювати файл одночасно у багато місць, можна скористатися пакетним файлом, що значно прискорить процес.

Також, існує корисна “хитрість”, що дозволяє відправляти файли до папки напряму з контекстного меню, якщо ви хочете скопіювати декілька файлів в одну директорію.

Копіювання файлу в декілька папок

Слід врахувати, що даний пакетний сценарій має обмеження: папки, в які ви бажаєте скопіювати файл, повинні знаходитись в одній батьківській директорії. Тобто, цей метод не працюватиме, якщо потрібні папки розташовані в різних місцях.

Відкрийте текстовий редактор (наприклад, Блокнот) та скопіюйте наступний код. Перед збереженням потрібно буде внести певні корективи у сценарій:

@echo off
for /D %%a in ("шлях-до-папки*.*") do xcopy /y /d шлях-до-файлу.Розширення "%%a"

Перша необхідна зміна – це шлях (“шлях-до-папки*.*”). Замініть цей шлях на шлях до каталогу, який містить папки-призначення. Наприклад, припустимо, що у вас є папка “Ігри”, а в ній підпапки з назвами “1”, “2” та “3”. У такому разі, вам потрібно вказати повний шлях до папки “Ігри”. Залишіть комбінацію *.* без змін, не видаляючи дужки чи лапки.

Друга правка стосується частини “шлях-до-файлу.Розширення”. Замініть це на повний шлях до файлу, який потрібно скопіювати. Вкажіть повну назву файлу та його розширення. Якщо у шляху або назві файлу є пробіли, візьміть їх у подвійні лапки.

Після внесення змін збережіть файл з розширенням .bat та запустіть його. Файл буде скопійовано у всі підпапки вказаної директорії.

Приклад:

Ось приклад відредагованого коду, що копіює файл “МійФайл.txt” з місця C:\Користувачі\ім’я_користувача\РобочийСтіл\Тест у всі підпапки, що розташовані в C:\Користувачі\ім’я_користувача\РобочийСтіл\НоваПапка.

@echo off
for /D %%a in ("C:\Користувачі\ім'я_користувача\РобочийСтіл\НоваПапка*.*") do xcopy /y /d C:\Користувачі\ім'я_користувача\РобочийСтіл\Тест\МійФайл.txt "%%a"

Якщо ви не хочете використовувати пакетні файли, можна виконати той самий код з незначними модифікаціями безпосередньо в командному рядку. Відредагований код виглядає так:

for /D %a in ("c:\шлях-до-папки*.*") do xcopy /y /d c:\файл.Розширення "%a"

Зміни полягають у видаленні рядка “@echo off” та одного із знаків %. Як і у випадку з пакетним файлом, потрібно відредагувати цей код, вказавши шлях до файлу та папок. Перевагою використання командного рядка є можливість відстежувати прогрес виконання операції.