|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Многократное копирование нескольких файлов и нумерация копий. |
|
CMD/BAT - [решено] Многократное копирование нескольких файлов и нумерация копий.
|
Новый участник Сообщения: 18 |
Профиль | Отправить PM | Цитировать Здравствуйте, помогите пожалуйста в решении следующей проблемы:
В папке находятся файлы First.mp3 Second.mp3 Third.mp3 Fourth.mp3 Необходимо скопировать каждый файл несколько раз и пронумеровать копии(при этом исходные файлы надо удалить), чтобы содержимое папки приобрело такой вид: First_0001.mp3 First_0002.mp3 First_0003.mp3 Second_0001.mp3 Second_0002.mp3 Second_0003.mp3 Third_0001.mp3 Third_0002.mp3 Third_0003.mp3 Fourth_0001.mp3 Fourth_0002.mp3 Fourth_0003.mp3 |
|
Отправлено: 20:38, 01-01-2016 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Попробуйте так:
Скрытый текст
@echo off setlocal enableextensions enabledelayedexpansion set sSourceFolder=%~1 if defined sSourceFolder ( if exist "%sSourceFolder%\." ( pushd "%sSourceFolder%" for /f "usebackq delims=" %%i in ( `2^>nul dir /b /a:-d "*.mp3"` ) do ( for /l %%j in (1, 1, 3) do >nul copy "%%~i" "%%~ni_000%%j%%~xi" del /f /q "%%~i" ) popd ) else ( echo Can't find source folder [%sSourceFolder%]. exit /b 2 ) ) else ( echo Usage: %~nx0 ^<Source folder^> exit /b 1 ) endlocal exit /b 0 |
Отправлено: 21:35, 01-01-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 18
|
Профиль | Отправить PM | Цитировать К сожалению, мной не совсем точно был описан процесс, не был учтен один нюанс, вследствие чего желаемый результат все-таки не был достигнут(
Каждый файл необходимо скопировать не 3 раза, как в приведенном мной примере, а несколько (свыше ста раз), т.е. чтобы содержимое папки приобрело такой вид: Скрытый текст
First_0001.mp3
First_0002.mp3 ........................ First_0101.mp3 Second_0001.mp3 Second_0002.mp3 ........................ Second_0101.mp3 Third_0001.mp3 Third_0002.mp3 ........................ Third_0101.mp3 Fourth_0001.mp3 Fourth_0002.mp3 ........................ Fourth_0101.mp3 Сейчас же получается вот так: Скрытый текст
First_0001.mp3
First_0002.mp3 ........................ First_000101.mp3 Second_0001.mp3 Second_0002.mp3 ........................ Second_000101.mp3 Third_0001.mp3 Third_0002.mp3 ........................ Third_000101.mp3 Fourth_0001.mp3 Fourth_0002.mp3 ........................ Fourth_000101.mp3 |
Последний раз редактировалось Metallor, 02-01-2016 в 01:46. Отправлено: 22:00, 01-01-2016 | #3 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать |
Отправлено: 03:07, 02-01-2016 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Metallor, тогда попробуйте так:
Скрытый текст
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=%~1
set /a iCount = 101
if defined sSourceFolder (
if exist "%sSourceFolder%\." (
pushd "%sSourceFolder%"
for /f "usebackq delims=" %%i in (
`2^>nul dir /b /a:-d "*.mp3"`
) do (
for /l %%j in (1, 1, %iCount%) do (
set sTemplate=0000%%j
echo [%%~i] ---^> [%%~ni_!sTemplate:~-4!%%~xi]
>nul copy "%%~i" "%%~ni_!sTemplate:~-4!%%~xi"
)
del /f /q "%%~i"
)
popd
) else (
echo Can't find source folder [%sSourceFolder%].
exit /b 2
)
) else (
echo Usage: %~nx0 ^<Source folder^>
exit /b 1
)
endlocal
exit /b 0
|
|
Отправлено: 03:32, 02-01-2016 | #5 |
Новый участник Сообщения: 18
|
Профиль | Отправить PM | Цитировать Спасибо. Теперь все получилось
|
Отправлено: 09:57, 02-01-2016 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Прочие - Запуск нескольких копий приложений. | pauz | Программное обеспечение Windows | 0 | 14-08-2015 11:31 | |
CMD/BAT - Копирование нескольких файлов из папки в другую с прошедшей датой | salmans | Скриптовые языки администрирования Windows | 5 | 06-08-2013 03:01 | |
Разное - Запуск нескольких копий Программы просмотра изображений и факсов | Dabaduch | Microsoft Windows 2000/XP | 1 | 09-03-2009 17:34 | |
Интернет - Многократное копирование процесса EXPLORER.EXE | w1nux | Лечение систем от вредоносных программ | 4 | 15-12-2008 12:55 | |
запуск нескольких копий одной программы через командную строку | XqlpX | Хочу все знать | 3 | 19-11-2008 13:48 |
|