Имена папок как у вложенных одиночных файлов заданного типа
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Автоматизация Total Commander

#1: Имена папок как у вложенных одиночных файлов заданного типа Author: xrRender PostPosted: Sat Jun 23, 2018 17:15
    —
Доброго времени суток долго гуглив решил написать о своей проблеме тут Sad
В каталоге есть 1780 папок с неправильными именами но в каждой папке есть файл с расширением *.map которое имеет правильное имя! Как мне можно с помощью батника или коммандера переименовать все эти папки в правильное имя из файла?

 !  Avada:
Слишком общий прежний заголовок заменён более конкретным.

#2:  Author: FlasherLocation: Москва PostPosted: Sat Jun 23, 2018 22:47
    —
Code:
'=================================== 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

#3:  Author: xrRender PostPosted: Wed Jun 27, 2018 00:33
    —
Flasher
Спасибо огромное Smile

#4:  Author: sa PostPosted: Thu Jun 28, 2018 17:35
    —
Если пользоваться средствами самого TC, то можно попробовать такой способ.
1. Отсортировать содержимое панели по имени (Ctrl+F3), найти (Alt+F7) файлы *.map, вывести их на панель, выделить и сКопировать имена файлов в буфер.
2. Выделить папки и в инструменте группового переименования (Ctrl+M) использовать пункт Редактировать имена… из контекстного меню, вызываемого по F10 или мышкой. Вместо старых имён папок надо вставить в редактор строки из буфера (Ctrl+V), сохранить новые имена и нажать кнопку Выполнить. Если расширение .map в именах папок не нужно, то перед Выполнить надо вписать .map в поле Найти: (в простейшем случае).
Разумеется, должно соблюдаться требование, что файлов c расширением map в каждой папке должно быть строго по одному.

#5:  Author: FlasherLocation: Москва PostPosted: Thu Jun 28, 2018 18:04
    —
Безотносительно того, в каком разделе находимся, и зачем делать столько лишних движений, нижнее "Разумеется"-требование тут уже по сути мимо сабжа (должно быть учтено в решении).
sa wrote:
перед Выполнить надо вписать .map в поле Найти: (в простейшем случае).
Но уход от простейшего к верному был бы всяко безопаснее: \.map$ ([E], Рег.выраж.)



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group