Справка - Поиск - Участники - Войти - Регистрация
Полная версия: Пакетная обработка файлов
Частный клуб Алекса Экслера > Софт
AndreyG
28 июля 2016, 15:30
Была такая штука, bat-файлы. Когда-то, лет 20 назад, я это умел, сейчас уже забыл. confused.gif

Задача простая: нужно сделать много копий одного файла и дать ими новые имена. Имена отличаются сильно (я генерирую их в Экселе по своим правилам), простое добавление номера не годится.
Гнус
28 июля 2016, 16:37
Сперто из инета.

CODE
@echo off

set "file=исходныйфайл.txt"
set "list=список имен.txt"

for /f "usebackq delims=" %%i in ("%list%") do for %%j in (%%i) do copy/b "%file%" "%%j.txt"
AndreyG
28 июля 2016, 16:53
Это текст батника?
File - это сам исходный файл (он не txt) или текстовый файл с именем исходного внутри?
Гнус
28 июля 2016, 16:58

AndreyG написал: Это текст батника?

Да.

AndreyG написал: File - это сам исходный файл (он не txt) или текстовый файл с именем исходного внутри?

Это сам файл, имя.расширение поставь какое хочешь, не забудь поменять расширение на нужное тебе в самом цикле.
AndreyG
28 июля 2016, 17:25
Что-то не получается...

Допустим, исходный файл 0.SLDDRW.
Я делаю в блокноте текстовый файл список_имен.txt.

1
2
3
4
5


В bat пишу следующее:

@echo off

set "file=0.SLDDRW"
set "list=список_имен.txt"

for /f "usebackq delims=" %%i in ("%list%") do for %%j in (%%i) do copy/b "%file%" "%%j.SLDDRW"


Помнится, в те времена все было как-то проще...

UPD:

Тупо написал

@echo off

copy 0.slddrw 1.slddrw
copy 0.slddrw 2.slddrw
copy 0.slddrw 3.slddrw
copy 0.slddrw 4.slddrw

и все прекрасно заработало smile.gif
Гнус
28 июля 2016, 20:16

AndreyG написал: Я делаю в блокноте текстовый файл список_имен.txt.

Латиницей файл обзови, оно по русски и у меня не работает.
Эта версия форума - с пониженной функциональностью. Для просмотра полной версии со всеми функциями, форматированием, картинками и т. п. нажмите сюда.
Invision Power Board © 2001-2017 Invision Power Services, Inc.
модификация - Яро & Серёга
Хостинг от «Зенон»Сервера компании «ETegro»