|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Последовательное, циклическое переименование файлов в каталоге по кругу в cmd. |
|
CMD/BAT - Последовательное, циклическое переименование файлов в каталоге по кругу в cmd.
|
Новый участник Сообщения: 25 |
Здравствуйте!
Почти не разбираюсь в скриптах, поэтому прошу помощи. В каталоге есть файлы c числовыми именами: 01.jpg, 02.jpg и т.д. Нужно переименовывать файлы так, что бы после каждого срабатывания cmd последний становился первым по порядку цифр, первый вторым, второй - третьим и т.д.. Первоначальное именование по порядку возможно, если будет необходимо для скрипта. Файлов может быть от 01 до 99. Спасибо. |
|
Отправлено: 14:40, 07-04-2016 |
Ветеран Сообщения: 1758
|
|
Отправлено: 16:41, 07-04-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Foreigner, а вдрух у него там FAT32!
|
Отправлено: 17:19, 07-04-2016 | #3 |
Ветеран Сообщения: 1758
|
Iska, А в чем может возникнуть проблема? Под рукой даже флешки нет проверить
|
Отправлено: 17:25, 07-04-2016 | #4 |
Ветеран Сообщения: 992
|
Профиль | Сайт | Отправить PM | Цитировать Foreigner, в именах.
|
|
Отправлено: 17:30, 07-04-2016 | #5 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Vasylich, Переименуютя все сразу в нужном вам порядке с первого запуска:
@echo off for /f "delims= eol=" %%a in ('dir /a-d/b "katalog\*.jpg"^|sort /+2147483647') do set /a n+=1& cmd/v/c set "m=0!n!"^& ren "katalog\%%~nxa" "new!m:~-2!%%~xa" exit /b при следующем запуске, по идее, должно произойти обратное, не проверял. |
Отправлено: 17:50, 07-04-2016 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Foreigner:
На NTFS будет всегда лексикографический, поскольку они так и хранятся в MFT — в виде упорядоченного B+ дерева. На FATx порядок будет соответствовать дате создания файлов: H:\04>for /l %i in (5, -1, 1) do @copy nul 0%i.txt Скопировано файлов: 1. Скопировано файлов: 1. Скопировано файлов: 1. Скопировано файлов: 1. Скопировано файлов: 1. H:\04>for %i in (*.txt) do @echo %i 05.txt 04.txt 03.txt 02.txt 01.txt В частности, из-за этого пришлось специально учитывать такую возможность здесь: VBScript & CMD: разделение файла на фрагменты и их последующее слияние — Серый форум. В первом варианте я не сообразил как побороть сие простым способом, и сделал поочерёдное «подклеивание» частей. Затем тутошний коллега Diamond навёл меня на мысль, что достаточно просто предварительно скопировать части в правильном порядке во временную папку, а затем уже смело использовать «copy /b name.ext.part????.bin name.ext» в этой временной папке — ОС будет уже гарантированно отдавать файлы команде copy в нужном порядке (кстати, только сейчас заметил, что описание там в самом скрипте не исправил ![]() |
|
Отправлено: 18:24, 07-04-2016 | #7 |
Ветеран Сообщения: 1758
|
Iska, Давно не сталкивался, даже ради интереса создал vhd на fat32 -- действительно сортировка от обратного, тогда лучше через dir + sort (надеюсь, что там не 95)))
|
Отправлено: 18:41, 07-04-2016 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Ну да, тут вполне подойдёт даже и обычный «dir /b /o:n …».
|
Отправлено: 19:13, 07-04-2016 | #9 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Foreigner:
|
|
Отправлено: 19:15, 07-04-2016 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Переименование файлов в каталоге (.avi) | dokxpi@vk | Скриптовые языки администрирования Windows | 15 | 21-05-2015 00:44 | |
CMD/BAT - Проверка файлов в сетевом каталоге, и создание списка из тех которые по размеру < N | wonted | Скриптовые языки администрирования Windows | 21 | 17-03-2014 13:40 | |
CMD/BAT - Переименование файлов по маске | tobornforlife@vk | Скриптовые языки администрирования Windows | 5 | 24-02-2014 17:07 | |
CMD/BAT - [решено] узнать количество файлов в каталоге через CMD | toro | Скриптовые языки администрирования Windows | 5 | 04-12-2013 06:31 | |
CMD/BAT - Переименование файлов в каталоге | flower | Скриптовые языки администрирования Windows | 2 | 28-11-2013 15:00 |
|