CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Аватара пользователя
delure

CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение delure »

uTorrent глюканул и все скаченные файлы переименовал в расширение *.!ut

Хотелось бы найти все эти файлы (а они раскиданы по всему диску в папках-подпапках) и вернуть им прежнее расширение, не делая это вручную, т.к. файлов несколько тысяч.

Для примера: Game.of.Thrones.s01e06.rus.LostFilm.TV.avi.!ut -> Game.of.Thrones.s01e06.rus.LostFilm.TV.avi

Т.е. Хочется вернуть расширение, стоящее перед .!ut

Подойдет любой вариант решения.
Аватара пользователя
amel27

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение amel27 »

батником:

Код:

Код: Выделить всё

for /f "delims=" %%a in ('dir/b/s/a-d \*.!ut') do ren "%%a" "%%~na"

командой из CMD консоли:

Код:

Код: Выделить всё

for /f "delims=" %a in ('dir/b/s/a-d \*.!ut') do ren "%a" "%~na"
Аватара пользователя
zolot

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение zolot »

delure, одноразовые (или полуавтоматические) операции, зачастую, быстрее и проще выполнять при помощи файловых менеджеров. Я использую Far Manager. В нём это может выглядеть так:




1. «Alt-F7», «*.!ut», «Ctrl-Enter».




Код:

Код: Выделить всё

╔════════════════════════════ Поиск файла ═════════════════════════════╗
║ Одна или несколько масок файлов:                                     ║
║ *.!ut                                                               ↓║
╟──────────────────────────────────────────────────────────────────────╢
║ Содержащих текст:                                                    ║
║                                                                     ↓║
║ Используя кодовую страницу:                                          ║
║ Все кодовые страницы                                                ↓║
╟──────────────────────────────────┬───────────────────────────────────╢
║ [ ] Учитывать регистр            │ [ ] Искать в архивах              ║
║ [ ] Только целые слова           │ [ ] Искать папки                  ║
║ [ ] Искать 16-ричный код         │ [ ] Искать в символических ссылках║
╟──────────────────────────────────┴───────────────────────────────────╢
║ Выберите область поиска:                                             ║
║ С корня диска C:                ↓  [ ] Использовать фильтр           ║
╟──────────────────────────────────────────────────────────────────────╢
║     { Искать } [ Диск ] [ Фильтр ] [ Дополнительно ] [ Отмена ]      ║
╚══════════════════════════════════════════════════════════════════════╝







2. Дождаться результатов поиска и отправить найденные файлы во временную панель, нажав кнопку «Панель».






Код:

Код: Выделить всё

╔════════════════════════════════════════════════ Поиск файла: *.!ut ═════════════════════════════════════════════════╗
║  E:\Песочница\0063\                                                                                                 ║
║   28.07.2011│            0│   A      │0001.!ut                                                                      ║
║   28.07.2011│            0│   A      │0002.!ut                                                                      ║
║   28.07.2011│            0│   A      │0003.!ut                                                                      ║
║                                                                                                                     ║
…
║                                                                                                                     ║
╠═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║ Поиск закончен. Найдено файлов: 3, папок: 0                                                                         ║
╟─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢
║                           { Новый поиск } [ Перейти ] [ Смотреть ] [ Панель ] [ Отмена ]                            ║
╚═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝



Код:

Код: Выделить всё

╔═══════════════════ Временная панель [0] ═════╤════════╤═05:28
║и                 Имя                  │Размер│  Дата  │Время║
║⌂..                                    │ Вверх│        │     ║
║ 0001.!ut                              │     0│28.07.11│05:27║
║ 0002.!ut                              │     0│28.07.11│05:23║
║ 0003.!ut                              │     0│28.07.11│05:27║
║                                       │      │        │     ║
…







3. Выделить файлы: «Gray*», переименовать файлы: «F6», «*.», «Ctrl-Enter».






Код:

Код: Выделить всё

╔══════════════════════ Переименование/Перенос ══════════════════════╗
║ Переименовать или перенести 3 элемента в:                          ║
║ *.                                                                ↓║
╟────────────────────────────────────────────────────────────────────╢
║ Права доступа: (•) По умолчанию ( ) Копировать ( ) Наследовать     ║
╟────────────────────────────────────────────────────────────────────╢
║ Уже существующие файлы: Запрос действия                           ↓║
║ [ ] Копировать содержимое символических ссылок                     ║
║ [ ] Обрабатывать несколько имён файлов                             ║
╟────────────────────────────────────────────────────────────────────╢
║ [ ] Использовать фильтр                                            ║
╟────────────────────────────────────────────────────────────────────╢
║      { Переименовать } [ F10-Дерево ] [ Фильтр ] [ Отменить ]      ║
╚════════════════════════════════════════════════════════════════════╝
Аватара пользователя
Iska

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение Iska »

delure, одноразовые (или полуавтоматические) операции, зачастую, быстрее и проще выполнять при помощи файловых менеджеров. Я использую Far Manager. В нём это может выглядеть так:




1. «Alt-F7», «*.!ut», «Ctrl-Enter».




Код:

Код: Выделить всё

╔════════════════════════════ Поиск файла ═════════════════════════════╗
║ Одна или несколько масок файлов:                                     ║
║ *.!ut                                                               ↓║
╟──────────────────────────────────────────────────────────────────────╢
║ Содержащих текст:                                                    ║
║                                                                     ↓║
║ Используя кодовую страницу:                                          ║
║ Все кодовые страницы                                                ↓║
╟──────────────────────────────────┬───────────────────────────────────╢
║ [ ] Учитывать регистр            │ [ ] Искать в архивах              ║
║ [ ] Только целые слова           │ [ ] Искать папки                  ║
║ [ ] Искать 16-ричный код         │ [ ] Искать в символических ссылках║
╟──────────────────────────────────┴───────────────────────────────────╢
║ Выберите область поиска:                                             ║
║ С корня диска C:                ↓  [ ] Использовать фильтр           ║
╟──────────────────────────────────────────────────────────────────────╢
║     { Искать } [ Диск ] [ Фильтр ] [ Дополнительно ] [ Отмена ]      ║
╚══════════════════════════════════════════════════════════════════════╝







2. Дождаться результатов поиска и отправить найденные файлы во временную панель, нажав кнопку «Панель».






Код:

Код: Выделить всё

╔════════════════════════════════════════════════ Поиск файла: *.!ut ═════════════════════════════════════════════════╗
║  E:\Песочница\0063\                                                                                                 ║
║   28.07.2011│            0│   A      │0001.!ut                                                                      ║
║   28.07.2011│            0│   A      │0002.!ut                                                                      ║
║   28.07.2011│            0│   A      │0003.!ut                                                                      ║
║                                                                                                                     ║
…
║                                                                                                                     ║
╠═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║ Поиск закончен. Найдено файлов: 3, папок: 0                                                                         ║
╟─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢
║                           { Новый поиск } [ Перейти ] [ Смотреть ] [ Панель ] [ Отмена ]                            ║
╚═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝



Код:

Код: Выделить всё

╔═══════════════════ Временная панель [0] ═════╤════════╤═05:28
║и                 Имя                  │Размер│  Дата  │Время║
║⌂..                                    │ Вверх│        │     ║
║ 0001.!ut                              │     0│28.07.11│05:27║
║ 0002.!ut                              │     0│28.07.11│05:23║
║ 0003.!ut                              │     0│28.07.11│05:27║
║                                       │      │        │     ║
…







3. Выделить файлы: «Gray*», переименовать файлы: «F6», «*.», «Ctrl-Enter».






Код:

Код: Выделить всё

╔══════════════════════ Переименование/Перенос ══════════════════════╗
║ Переименовать или перенести 3 элемента в:                          ║
║ *.                                                                ↓║
╟────────────────────────────────────────────────────────────────────╢
║ Права доступа: (•) По умолчанию ( ) Копировать ( ) Наследовать     ║
╟────────────────────────────────────────────────────────────────────╢
║ Уже существующие файлы: Запрос действия                           ↓║
║ [ ] Копировать содержимое символических ссылок                     ║
║ [ ] Обрабатывать несколько имён файлов                             ║
╟────────────────────────────────────────────────────────────────────╢
║ [ ] Использовать фильтр                                            ║
╟────────────────────────────────────────────────────────────────────╢
║      { Переименовать } [ F10-Дерево ] [ Фильтр ] [ Отменить ]      ║
╚════════════════════════════════════════════════════════════════════╝
Аватара пользователя
Valek271183

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение Valek271183 »

подскажите ещё как поправить bat если у меня добавилось два расширения .!ut и .fut то есть после расширения .avi ещё написано .!ut.!ut_!21
Аватара пользователя
Foreigner

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение Foreigner »

Valek271183, Независимо от количества расширений, главное, чтобы присутствовало ".avi"



Код:

Код: Выделить всё

@echo off
setlocal
for /f "tokens=*" %%i in ('dir /b *.avi*') do call:ren "%%i"
goto:eof
:ren
set "file=%~1"
for /f "tokens=1" %%i in ("%file:.avi= %") do ren %1 "%%i.avi"
Аватара пользователя
Valek271183

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение Valek271183 »

а если не только avi и другие файлы, iso, docx и другие файлики, Как тут быть?
Аватара пользователя
Foreigner

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение Foreigner »

Подскажите как сделать батник для удаления второго расширения *.html во всех файлах на диске D
Аватара пользователя
zolot

Re: CMD/BAT - [решено] Двойное расширение файла, удаление последнего.

Сообщение zolot »

Цитата zolot:



как сделать батник для удаления второго расширения *.html во всех файлах
CMD/BAT - [решено] Двойное расширение файла, удаление последнего.




Приведите пример нескольких имён таких файлов.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»