![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Разделение текстового файла на переменное количество частей и перемещение этих частей |
|
CMD/BAT - Разделение текстового файла на переменное количество частей и перемещение этих частей
|
Новый участник Сообщения: 40 |
С Вашей помощью у меня получается создать папки с плейлистами
Срипт
@echo off setlocal enabledelayedexpansion >nul chcp 1251 set "src=F:\Music\Test" set "dest=F:\Music\MPL" set "files=*.mp3" set "playlistext=.alb" 2>nul (md "%dest%" for /f "delims=" %%i in ('dir/ad/b "%src%"') do >"%dest%\%%i%playlistext%" dir/a-d/b/s "%src%\%%i\%files%") For %%a in (F:\Music\MPL\*.alb) do md "F:\Music\MPL\%%~na"& move "%%~a" "F:\Music\MPL\%%~na" for /f "tokens=*" %%i in ('dir /b /s F:\Music\MPL\*.alb') do ( for /f "tokens=*" %%j in ('type "%%i"') do call:set_random "%%j" call:set_content "%%i" ) goto:eof :set_random set "line_%random%=%~1" goto:eof :set_content 1>%1 ( for /f "tokens=2* delims==" %%i in ('set line_') do echo %%i ) for /f "tokens=1 delims==" %%i in ('set line_') do set "%%i=" В папке "E:\Air\playlists" у меня лежит много подпапок. В каждой подпапке есть папка "elements" elements
Цитата:
В папках "elements" лежат миниплейлисты. Их имена = именам плейлистов, которые созданы предыдущим скриптом, но с тегами 01, 02, 03... Пример: 1. В папке "F:\Music\MPL\Chillout" есть файл "chillout.alb". В папке "E:\Air\playlists\Folder01\elements" есть файл "chillout01.alb", а в папке "E:\Air\playlists\Folder03\elements" есть файл "chillout02.alb". В остальных папках "E:\Air\playlists\*\elements" файлы "chillout**.alb" отсутствуют. Всего 2. В папке "F:\Music\MPL\Trance" есть файл "trance.alb". В папке "E:\Air\playlists\Folder01\elements" есть файл "trance01.alb", в папке "E:\Air\playlists\Folder02\elements" есть файл "trance02.alb", а в папке "E:\Air\playlists\Folder04\elements" есть файл "trance03.alb". В остальных папках "E:\Air\playlists\*\elements" файлы "trance**.alb" отсутствуют. Всего 3. 2. После запуска скрипта он должен определить, что в подпапках "F:\Music\MPL" есть файл "chillout.alb", а во всех подпапках "E:\Air\playlists\*\elements" есть 2 файла с тегом "chillout" в названии. То же самое сравнение для "trance" и всех остальных. 3. Скипт разделяет файл "F:\Music\MPL\Chillout\chillout.alb" на "F:\Music\MPL\Chillout\chillout01.alb" и "F:\Music\MPL\Chillout\chillout02.alb" с одинаковым количеством строк. "F:\Music\MPL\Trance\trance.alb" разделяет на "F:\Music\MPL\Trance\trance01.alb", "F:\Music\MPL\Trance\trance02.alb" и "F:\Music\MPL\Trance\trance03.alb" с одинаковым количеством строк. 4. Замена существующих "E:\Air\playlists\*\elements\chillout**.alb" и "E:\Air\playlists\*\elements\trance**.alb" новыми "F:\Music\MPL\Chillout\chillout**.alb" и "F:\Music\MPL\Trance\trance**.alb" Вот как-то так. Надеюсь я не путано объяснил, что я хочу получить в итоге? |
||
Отправлено: 21:43, 27-02-2016 |
Новый участник Сообщения: 40
|
Профиль | Отправить PM | Цитировать Всем спасибо. Принято в работу фрилансером.
|
Отправлено: 13:16, 29-02-2016 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Разделение текстового файла на части без разделения абзацев | Re:Flex | Скриптовые языки администрирования Windows | 9 | 09-07-2013 04:35 | |
Разделения экрана на несколько частей | ViRTaCe | Хочу все знать | 5 | 22-03-2013 01:11 | |
Как разбить *.avi файл на 2 и более частей | azbest | Видео и аудио: обработка и кодирование | 10 | 20-10-2009 15:58 | |
Download Master (архив разбит на несколько частей) | Kindmankind | Хочу все знать | 11 | 19-03-2009 23:55 | |
Как разбить большой кусок текста на несколько частей | chem1 | Вебмастеру | 11 | 25-05-2008 16:32 |
|