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
valexiev



Joined: 09 Feb 2007
Posts: 12

Post (Separately) Posted: Tue Feb 13, 2007 21:31    Post subject: Подсветка по разнице дат у двух файлов Reply with quote

Помогите умельцъ, мне нужно что-то очень особенное: если файл
"mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc" новее чем файл
"mPay2 DOC M.1.PM 1.0 - Project Mandate.doc"
на больше чем 1д то надо разкрасить его одним цветом, а если не новее то другим.

Тоест нужен фильтр которъй находил бъ файл "(.*)QR\d.*", но только если он новее чем файл "\1 - .*" хотя бъ на 1д.

Пожалуйста если не трудно, дайте PM или емаил на vladimir собака sirma точка bg. Спасибо за все ответъ!

CaptainFlint:
Сообщение вынесено в отдельную ветку, поскольку оно не относится к обсуждению TCKB.


 !  Avada:
Перемещено из Секретов и советов в Автоматизацию.
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Wed Feb 14, 2007 10:58    Post subject: Reply with quote

Можно только сравнивать дату файла с системной датой, а не дату одного файла с датой другого.
Не совсем по теме, но http://powerpro.wincmd.ru/Scripts/FileAge.htm.
Это я к чему. Можно написать скрипт, который бы находил такие файлы (с нужной разницей по дате), а потом как-то определял их закраску. Один из способов - комментарий в descript.ion.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Batya



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

Post (Separately) Posted: Wed Feb 14, 2007 12:32    Post subject: Reply with quote

Нужно использовать Script Content Plugin.
Только для скрипта нужны более четкие условия.
Я не очень силен в масках, но, вроде, маска "(.*)QR\d.*" не совсем верна - у файлов разные окончания (помимо добавки QR\d). По каким условиям точно сопоставить эти два файла?
Back to top
View user's profile Send private message
valexiev



Joined: 09 Feb 2007
Posts: 12

Post (Separately) Posted: Thu Feb 15, 2007 00:22    Post subject: Reply with quote

Вахмурка wrote:
http://powerpro.wincmd.ru/Scripts/FileAge.htm.
Можно написать скрипт, который бы находил такие файлы (с нужной разницей по дате).

Ну ето я понимаю, но потом как сказать ето фильтру чтоб он потом определил закраску?

Quote:
Один из способов - комментарий в descript.ion

Вот ето я не понял.
Back to top
View user's profile Send private message
valexiev



Joined: 09 Feb 2007
Posts: 12

Post (Separately) Posted: Thu Feb 15, 2007 03:14    Post subject: Изчисление разницъ дней до "базового" файла Reply with quote

Batya wrote:
Нужно использовать Script Content Plugin.

Вот ето да! Попробую (никогда не жаль употребить 3-4ч на автоматицазию которая потом может сохранить мне аж 3-4 минутъ! Smile)

Quote:
Только для скрипта нужны более четкие условия.


Условия такие: на каждъй основной файл у меня еще 4 "QR" файла (ето вам PRINCE2)
Code:
mPay2 DOC M.1.PM 1.0 - Project Mandate.doc
mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc
mPay2 DOC M.1.PM 1.0 QREL001-1 Quality Review Error List.doc
mPay2 DOC M.1.PM 1.0 QRFAL001-1 Quality Review Follow-up Action List.doc

Хочу раскрасить QR файлъ которъе не новее основного файла.

Quote:
По каким условиям точно сопоставить эти два файла?

Одинаковое начало имени, до "QR".

Так.. написал, и даже работает!
Code:

'Script for Script_WDX
' (c) Vladimir Alexiev <vladimir@sirma.bg>

' Given a "QR" file such as
' mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc
' Find the "base file" such as
' mPay2 DOC M.1.PM 1.0 - Project Mandate.doc
' And then return the date difference between the "QR" and "base" file in days.
' Also returns a sign (+) or (-) depending on whether the difference is >=5d or less.
' For example: 0 (-), 4 (-), 5(+), 10 (+)

'filename = "mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc"

content = ""

set re = new regexp
set reNotbase = new regexp
re.pattern = "^(.* )1\.0 QR(FAL)?0" ' interesting QR files
reNotbase.pattern = "^(.* )1\.0 QR" ' not "base" files: these are all QR files
set matches = re.execute (filename)

if matches.count > 0 then
  prefix = matches(0).submatches(0)
  set fso = CreateObject("Scripting.FileSystemObject")
  for each basefile in fso.getFolder(".").files
    basename = basefile.name
    if prefix = left (basename, len(prefix)) and not reNotbase.test(basename) then
      dat = fso.getFile(filename).dateLastModified
      basedat = fso.GetFile(basename).dateLastModified
      diff = DateDiff ("d", basedat, dat) ' or "h" for hours
      if diff < 5 then
        sign = "(-)"
      else
        sign = "(+)"
      end if
      content = diff & " " & sign
      exit for
    end if
  next
  set fso = nothing
end if

set matches = nothing
set re = nothing
set reNotbase = nothing

'msgbox content


script.ini:
Code:

[QR-date-diff]
Script=QR-date-diff.vbs
LongName=0
ParseDirs=0
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