Перетягування об’єктів мишкою значно спрощує процеси копіювання та переміщення файлів чи директорій. Якщо ви маєте потребу скопіювати певний файл в декілька різних місць, затисніть клавішу 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” та одного із знаків %. Як і у випадку з пакетним файлом, потрібно відредагувати цей код, вказавши шлях до файлу та папок. Перевагою використання командного рядка є можливість відстежувати прогрес виконання операції.