Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Переименование файла по содержимому

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
AVos002



Joined: 04 May 2010
Posts: 47

Post (Separately) Posted: Tue Jun 21, 2011 00:13    Post subject: Переименование файла по содержимому Reply with quote

Доброго времени суток Уважаемые друзья!
Долго пытался самостоятельно написать скрипт, но наверное не судьба.
Задумка у меня такая:
есть куча файлов -> «img001.jpeg», «img002.jpeg» ... «imgNNN.jpeg» это фотографии в альбоме. Внутри каждого файла обычно хранится информация (в первых десяти строках) о точной дате и времени создания фотографии (записывается системное время фотоаппарата в момент щелчка затвора), формат такой (ЭТО ПРИМЕР->) «...2005:06:10 18:42:01...».
Мне необходимо найти этот фрагмент и переименовать файл по следующему алгоритму -> «2005-06-10-18-42-01.jpeg».
Написал скрипт, но похоже в jpeg есть хитрые символы, которые никак стандартными функциями не воспринимаются (понимаю, что это смешно, но другого объяснения нет). Вот код, но он не работает по крайней мере символа vbNewLine не находит:
Code:
Option Explicit

Dim FSO, MSO, MSG, File, List, F, FN
Dim CurDate, CurYear, CurMonth, CurDay, CurHour, CurMinute, CurSecond
Dim Fnam, Ras
Dim CommentVal
Dim lText
Dim lComm
Dim i
Dim strLine

List = WScript.Arguments(1)

Set FSO = CreateObject("Scripting.FileSystemObject")

For Each F In Split(FSO.OpenTextFile(List).ReadAll, vbNewLine)
  If F <> "" And FSO.FileExists(F) Then       
    Set File = FSO.GetFile(F)
   FN = File.Name                'получить название файла
   lText = FSO.OpenTextFile(F).ReadAll
   lComm = Filter(Split(lText, vbNewLine), "200", True, 1)    'выбрать строку соответствующую наименованию файла
   If UBound(lComm) > - 1 Then 'если строка со значением 200 найдена
      MsgBox "Здесь будет обработчик фрагмента и переименование файла"
   Else
      MsgBox "Ничего не делаем и выбираем следующий файл"
   End If
  End If
Next

Set MSO = Nothing
Set FSO = Nothing
Set File = Nothing
WScript.Quit

Заранее спасибо!
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10417
Location: Россия, Саратов

Post (Separately) Posted: Tue Jun 21, 2011 00:32    Post subject: Reply with quote

AVos002
Не знаю, как там насчёт скриптов, а банально воспользоваться в рамках группового переименования для имён выделеных файлов информационными плагинами (они же, как известно, плагины содержимого) — не судьба?
Например, [=exif.DateDigitized.Y-M-D] [=exif.TimeOriginal.h-m-s] вместо [N].
Как говорится в анекдоте, цена вопроса — две копейки и три минуты. Wink
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.


Last edited by Avada on Tue Jun 21, 2011 00:40; edited 1 time in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jun 21, 2011 00:37    Post subject: Reply with quote

Тут стоит задействовать Script Content Plugin в связке с exif или jpg-comment.
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Tue Jun 21, 2011 19:32    Post subject: Reply with quote

Или ExifTool
Back to top
View user's profile Send private message
AVos002



Joined: 04 May 2010
Posts: 47

Post (Separately) Posted: Tue Jun 21, 2011 19:53    Post subject: Reply with quote

Спасибо Avada! (Саратову привет)
Отдельный респект Flasher, за дополнителнение к сказанному Avad'ой !
Отлично! Работает групповое переименование и без скриптов. Я всегда знал, что есть более изящные решения моей проблемы (9870 фоток и где какая непонятно).
И вообще всем кто на посту СТП.
Back to top
View user's profile Send private message
JKT



Joined: 22 Sep 2009
Posts: 116
Location: Харьков

Post (Separately) Posted: Tue Oct 04, 2011 14:35    Post subject: Reply with quote

Здравствуйте уважаемые!
Имеется куча CHM файлов. Названия нечитабельны. А вот заголовки у всех правильные. Листер их прекрасно отображает. Надо их переименовать исходя из заголовков. Пробовал через мультиренейм плагин ShellDetails 1.22 - неработает, хотя там есть пункт "Заголовок". По Alt+Enter все поля чистые
Подскажите плиз куда копать?
XP SP3 , TC 7.56a
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Tue Oct 04, 2011 15:01    Post subject: Reply with quote

Здесь копал?
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
JKT



Joined: 22 Sep 2009
Posts: 116
Location: Харьков

Post (Separately) Posted: Tue Oct 04, 2011 15:18    Post subject: Reply with quote

Вахмурка
Установил. Немогу понять как он "..Кроме того, он может работать и как информационный плагин, предоставляя информацию о заголовке окна справки, компиляторе и времени компиляции. " Страницы html пакует в chm а вот где там он заголовок отображает?
И в контентных плагах его и не видать.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2224
Location: Москва, Россия

Post (Separately) Posted: Tue Oct 04, 2011 16:44    Post subject: Reply with quote

JKT wrote:
Немогу понять как он "..Кроме того, он может работать и как информационный плагин, предоставляя информацию о заголовке окна справки, компиляторе и времени компиляции. "

JKT wrote:
И в контентных плагах его и не видать.

В настройках вызови диалог установки wdx-плагинов. Жми "Добавить" и укажи путь к wcx-файлу.
В списке инф. полей появится меню "CHMDir".
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
JKT



Joined: 22 Sep 2009
Posts: 116
Location: Харьков

Post (Separately) Posted: Tue Oct 04, 2011 17:13    Post subject: Reply with quote

Batya
Жму "Добавить" из настроек wdx но он в упор нехочет видеть расширение wcx, только wdx показывает

Добавлено спустя 16 минут:

P.S.
Все получилось. Там просто надо было руками набить имя wcx.
Вахмурка,
Batya
Всем спасибо! Smile
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Tue Oct 04, 2011 17:30    Post subject: Reply with quote

JKT wrote:
Жму "Добавить" из настроек wdx но он в упор нехочет видеть расширение wcx, только wdx показывает

Вставь в диалоге открытия файла заботливо скопированный полный путь к wcx-файлу. А вообще, если в диалоге открытия в поле ввода имени файла написать любую маску и нажать Ентер, отобразятся файлы, соответствующие этой маске - например, пишешь *.wcx или *.* и жмешь Ентер. Это позволяет выбирать файлы, для которых нет варианта в раскрывающемся меню.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
AVos002



Joined: 04 May 2010
Posts: 47

Post (Separately) Posted: Tue Jan 03, 2012 17:39    Post subject: Reply with quote

Avada не дай сойти с ума. До этого все работало как часы, сейчас не работает групповое переименование [=exif.DateDigitized.Y-M-D], что опять не так?
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10417
Location: Россия, Саратов

Post (Separately) Posted: Tue Jan 03, 2012 18:25    Post subject: Reply with quote

AVos002 wrote:
что опять не так?

Я не ясновидящий и о том, что происходит на чужой машине, понятия не имею. Но когда что-то работало, а потом работать перестаёт, в промежутке всегда что-то происходит. По ошибке стёрли папку с плагином... По ошибке что-то не то удалили из wincmd.ini... Поменяли ОС и TC и пытаемся применить плагин, не подходящий по битности... Попытались употребить плагин для неподходящих файлов... И так далее. Проверять по всей цепочке.
И что в данном случае конкретно означает "не работает"? В чём это проявляется?
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
AVos002



Joined: 04 May 2010
Posts: 47

Post (Separately) Posted: Tue Jan 03, 2012 23:58    Post subject: Reply with quote

Доброго вечера! Воспользовался советом (но сначала успокоился), так и есть, ни один из плагинов «exif.wdx» и «script.wdx» не установлен. Вспомнил, что совсем недавно заменил «Wincmd.ini», получается это и стало причиной удаления?
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Wed Jan 04, 2012 00:27    Post subject: Reply with quote

Заменил на что?!
Разумеется, никакие манипуляции с файлом wincmd.ini не могли стать причиной удаления других файлов. А вот причиной того, что ТС перестал "видеть" плагины, физически присутствующие - вполне.
Так они "не установлены" или "удалены"?
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group