Доброго времени суток долго гуглив решил написать о своей проблеме тут
В каталоге есть 1780 папок с неправильными именами но в каждой папке есть файл с расширением *.map которое имеет правильное имя! Как мне можно с помощью батника или коммандера переименовать все эти папки в правильное имя из файла?
[mod="Avada"]Слишком общий прежний заголовок заменён более конкретным.[/mod]
'=================================== VBS ===================================
' Дать папкам активного каталога имена своих одиночных файлов заданного типа
' Условие: путь запуска — пустой
' Параметр: <расширение одиночного файла>
' Ключ /base оставляет только базовое имя
'===========================================================================
Set ShA = CreateObject("Shell.Application")
Set FSO = CreateObject("Scripting.FileSystemObject")
If WSH.Arguments.Named.Exists("base") Then Pr = "Bas" Else Pr = "Fil"
For Each Fd In FSO.GetFolder(FSO.GetAbsolutePathName("")).SubFolders
Set Items = ShA.NameSpace(Fd.Path).Items
Items.Filter 8384, "*." & WSH.Arguments(0)
If Items.Count = 1 Then Execute "Fd.Name="&_
"FSO.Get" & Pr & "eName(Items.Item(0).Path)"
Next
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Если пользоваться средствами самого TC, то можно попробовать такой способ.
1. Отсортировать содержимое панели по имени (Ctrl+F3), найти (Alt+F7) файлы *.map, вывести их на панель, выделить и сКопировать имена файлов в буфер.
2. Выделить папки и в инструменте группового переименования (Ctrl+M) использовать пункт Редактировать имена… из контекстного меню, вызываемого по F10 или мышкой. Вместо старых имён папок надо вставить в редактор строки из буфера (Ctrl+V), сохранить новые имена и нажать кнопку Выполнить. Если расширение .map в именах папок не нужно, то перед Выполнить надо вписать .map в поле Найти: (в простейшем случае).
Разумеется, должно соблюдаться требование, что файлов c расширением map в каждой папке должно быть строго по одному.
Безотносительно того, в каком разделе находимся, и зачем делать столько лишних движений, нижнее "Разумеется"-требование тут уже по сути мимо сабжа (должно быть учтено в решении).
sa писал(а):перед Выполнить надо вписать .map в поле Найти: (в простейшем случае).
Но уход от простейшего к верному был бы всяко безопаснее: \.map$ ([E], Рег.выраж.)
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.