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 

Подсветка каталога с недавно изменённым содержимым
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
Cuprum



Joined: 12 Jan 2011
Posts: 7

Post (Separately) Posted: Sun Feb 06, 2011 21:24    Post subject: Подсветка каталога с недавно изменённым содержимым Reply with quote

Всем привет!

Нашел схожую тему от 2007 г., но там говориться, что надо плясать с бубном. Вдруг что изменилось с того времени?

Задача - подсвечивать каталог, в котором за последние 15 минут произошли какие то изменения (добавились, удалились, изменились файлы)
Указал на вкладке "Плагины" окна поиска такой параметр
tc Время модификации < 00:15
В итоге подсвечиваются файлы с временем создания меньше 00:15 и любой датой.
Подскажите пожалуйста, как сделать правильно?


Last edited by Cuprum on Sun Feb 06, 2011 22:23; edited 1 time in total
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Sun Feb 06, 2011 21:37    Post subject: Reply with quote

Прочитать, что написано ссылкам http://www.forum.wincmd.ru/viewpost.php?p=29657
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Sun Feb 06, 2011 21:42    Post subject: Reply with quote

Попробуй прописать в конфигурации, раздел [Searches], следующее:
Quote:
ххх_SearchFlags=0|000002|||1|0|||||0000
где ххх - имя твоего шаблона. Перезапусти Тотал и открой вкладку поиска с этим шаблоном. У меня 1 час, тебе надо поменять на 15 минут. Должно работать.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Cuprum



Joined: 12 Jan 2011
Posts: 7

Post (Separately) Posted: Sun Feb 06, 2011 22:01    Post subject: Reply with quote

Читал, не нашел ответа на мой вопрос.
"Не старше чем" это немного не то.
Мне не интересно, когда был создан каталог, главное что в нем произошли изменения за последние n минут.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Sun Feb 06, 2011 22:22    Post subject: Reply with quote

Тогда, похоже, нужно писать скрипт к ScriptContent
А тему изменить на "Подсветка каталога с недавно изменённым содержимым"
Back to top
View user's profile Send private message
Cuprum



Joined: 12 Jan 2011
Posts: 7

Post (Separately) Posted: Sun Feb 06, 2011 22:22    Post subject: Reply with quote

Вахмурка
Что-то не выходит...
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Sun Feb 06, 2011 22:22    Post subject: Reply with quote

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



Joined: 12 Jan 2011
Posts: 7

Post (Separately) Posted: Sun Feb 06, 2011 22:31    Post subject: Reply with quote

Вахмурка
Я не рассуждаю. Не подсвечивается, дата не изменяется, факт.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Sun Feb 06, 2011 22:58    Post subject: Reply with quote

подсвечивается, НО
- только на NTFS
- только при удалении/добавлении, а не при изменении существующих файлов
- только если изменения непосредственно в папке, а не во вложенных

за 15 мин и они директории:
***_SearchFlags=0|000002000120|||15|-1||||22221|0000|


Last edited by Tol!k on Sun Feb 06, 2011 23:00; edited 1 time in total
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Sun Feb 06, 2011 22:59    Post subject: Reply with quote

Я еще раз проверил - изменяется при удалении и добавлении файла из/в содержимое директории. При изменении даты файла- нет. То, что у тебя не так, очень странно. Напиши следующее:
1) Сборка?
2) Версия ТС?
3) Версия винды.
4) А для файлов моя схема работает?

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



Joined: 12 Jan 2011
Posts: 7

Post (Separately) Posted: Sun Feb 06, 2011 23:35    Post subject: Reply with quote

Tol!k, Вахмурка
Понятно. У меня FAT, видимо поэтому не работает.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon Feb 07, 2011 14:19    Post subject: Reply with quote

Жалкая попытка: отслеживается только дата и только файлов
Code:
'Script for Script Content Plugin
'http://www.totalcmd.net/plugring/script_wdx.html
'http://wincmd.ru/plugring/script_wdx.html

'script.ini
'[Script]
'Section=DirNew

'[DirNew]
'Script=DirNew.vbs
'LongName=0
'ParseDirs=1

Dim fso, folder, filecollection, file
Set fso = CreateObject("Scripting.FileSystemObject")
dirnew = 999999999999999
diff = 0
content = ""

If fso.FolderExists(filename) Then
   Set folder = fso.GetFolder(filename)
   Set filecollection = folder.Files
   For Each file in filecollection
      diff = DateDiff("n",file.DateLastModified,Now())
      If diff < dirnew Then dirnew = diff
   Next
   content = dirnew
   Set folder = Nothing
   Set filecollection = Nothing
End If
Set fso = Nothing
Back to top
View user's profile Send private message
Batya



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

Post (Separately) Posted: Mon Feb 07, 2011 16:37    Post subject: Reply with quote

Также используется Script Content Plugin со скриптом:
Code:
'==============================================================================
' Колонки возвращают разницу в минутах между текущей датой и датой папки\файла:
'   Result  - дата создания;
'   Result1 - дата изменения;
'   Result2 - дата последнего доступа.
'==============================================================================
Const UseFolderRecursion = False 'Рекурсивный просмотр вложенных папок
'==============================================================================
Set FSO  = CreateObject("Scripting.FileSystemObject")
content  = Result(filename, 1)
content1 = Result(filename, 2)
content2 = Result(filename, 3)
Set FSO  = Nothing

Function Result(pPath, pMode)
  Dim Diff, F
  If FSO.FolderExists(pPath) Then
    Result = GetDiff(FSO.GetFolder(pPath), pMode)
    With FSO.GetFolder(pPath)
      For Each F In .Files
        Diff = Result(F, pMode)
        If Diff < Result Then Result = Diff
      Next
      If UseFolderRecursion Then
        For Each F In .SubFolders
          Diff = Result(F, pMode)
          If Diff < Result Then Result = Diff
        Next
      End If
    End With
  ElseIf FSO.FileExists(pPath) Then
    Result = GetDiff(FSO.GetFile(pPath), pMode)
  End If
End Function

Function GetDiff(pObj, pMode)
  Dim lDate
  With pObj
    Select Case pMode
      Case 1 lDate = .DateCreated
      Case 2 lDate = .DateLastModified
      Case 3 lDate = .DateLastAccessed
    End Select
  End With
  GetDiff = DateDiff("n", lDate, Now)
End Function


В script.ini в соответствующей секции должно быть:
Code:
LongName=1
ParseDirs=1

_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Cuprum



Joined: 12 Jan 2011
Posts: 7

Post (Separately) Posted: Sat Nov 19, 2011 14:33    Post subject: Reply with quote

Batya
Что-то я не очень пойму, что сделать чтобы скрипт заработал. Что надо писать в шаблоне на вкладке "плагины" для строк result, result1, result2?
Back to top
View user's profile Send private message
HEXFIX



Joined: 25 Jun 2010
Posts: 173
Location: Калининград

Post (Separately) Posted: Thu Oct 18, 2012 22:47    Post subject: Reply with quote

Присоединяюсь к вопросу. Спустя почти год, да Very Happy
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
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