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
ant



Joined: 13 Jun 2019
Posts: 11

Post (Separately) Posted: Sun Dec 08, 2019 15:15    Post subject: Синхронизация дат создания и изменения по более ранней Reply with quote

Здравствуйте, имеется на ПК папка со множеством ХТМЛ-файлов, разложеных по подпапкам. В ихних атрибутах неразбериха: то дата создания раньше, то дата изменения.
Мне нужно: во всех файлах привести оба значения по раньшему. Как это сделать?
- Если выделяю результаты поиска, то в атрибутах нужно задать какое-то значение, либо взять от другого. Но как сделать, чтобы Тотал-командер сравнил, и задал раньшее значение в поздний атрибут?
Т.е. чтобы в итоге оба были одинаковы по дате. Или это достигнется только хитрым бат-файлом?
Back to top
View user's profile Send private message
Avada



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

Post (Separately) Posted: Sun Dec 08, 2019 16:02    Post subject: Reply with quote

ant
Стандартным средствами TC — никак. Можно, конечно для любого набора файлов заменить (с плагином tc через диалог "Изменение атрибутов") дату/время создания на дату/время изменения — или наоборот. Но делать то или другое одним процессом, автоматически прикидывая зависимость от того, что там где раньше... не уверен, что даже в средствах автоматизации добиться этого легко. Впрочем, пусть специалисты судят.
Зачем вообще понадобилась подобная синхронизация дат и и что плохого в нынешнем состоянии, мне непонятно, но ваши прихоти — ваше дело.
И пара слов для сведения. Во-первых, в русском языке есть понятие "более ранний" а слово "раньший" отсутствует. Во-вторых, слово "дата" — женского рода, и "раньшим", как вы выражаетесь, она быть не может.

Тема перенесена в "Автоматизацию". Прежний заголовок "дату создания и дату изменения - привести к раньшему" приведён к более пристойному состоянию как по форме, так и по содержанию.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.


Last edited by Avada on Sun Dec 08, 2019 16:11; edited 1 time in total
Back to top
View user's profile Send private message
ant



Joined: 13 Jun 2019
Posts: 11

Post (Separately) Posted: Sun Dec 08, 2019 16:10    Post subject: Reply with quote

Avada, спасибо за ответ; но у нас разное словоупотребление в речи.
Эта потребность возникла потому, что в разных папках файлы одинаковой тематики, и мне нужно их собрать правильно, исходя из ранней даты.
Back to top
View user's profile Send private message
Avada



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

Post (Separately) Posted: Sun Dec 08, 2019 16:14    Post subject: Reply with quote

ant
У нас не разное словоупотребление, а у меня реальное, а у вас несуществующее в языке. Филологические дискуссии предлагаю на этом закончить. А причины постановки задачи, как было сказано, лично меня не особо интересуют. Нужно — ждите ответа.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Mon Dec 09, 2019 16:54    Post subject: Reply with quote

Вот такой скрипт на AutoHotkey навырисовывался.
Команда запуска: "Path_to_AHK\AutoHotkey.exe" "Path_to_script\Script.ahk"
Параметр: %WL
Выделить нужные файлы и каталоги, запустить скрипт. Обработаются в том числе рекурсивно файлы в выделенных каталогах.
Даты самих каталогов не модифицируются.
Советую предварительно попробовать работу скрипта на ненужных файлах, а то мало ли...


Code:
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
; Total Commander DreamLair                        ;
; Script: Sync Creation and Modification times     ;
;      (new time = earlier time)                   ;
; Script version: 1.0 (2019.12.09)                 ;
; Script author: LonerD (Made in DPR)              ;
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
; Parameter:                                       ;
;   1: %WL ( required )                            ;
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;

#NoEnv
#NoTrayIcon
#SingleInstance ignore
SetKeyDelay, 20, 20

if not ( WinExist("ahk_class TTOTAL_CMD") || WinActive("ahk_class TTOTAL_CMD") )
  ExitApp

if 0 < 1
  ExitApp
Target = %1%

FilelistV =

Loop, Read, % Target
{
  FilelistV := FilelistV . A_LoopReadLine . "`r`n"
  if InStr(FileExist(A_LoopReadLine), "D")
    Loop, Files, %A_LoopReadLine%*.*, FDR
      FilelistV := FilelistV . A_LoopFileFullPath . "`r`n"
}

Loop, Parse, % FilelistV, `n, `r
{
  if InStr(FileExist(A_LoopField), "D")
    Continue

  FileGetTime, CreDate , % A_LoopField, C
  FileGetTime, ModDate , % A_LoopField, M
  NewDate := CreDate > ModDate ? ModDate : CreDate
  FileSetTime, % NewDate, % A_LoopField, C, 0, 0
  FileSetTime, % NewDate, % A_LoopField, M, 0, 0
}

FilelistV =
ExitApp

_________________
Win11 x64 Eng | TC DreamLair eternal pre-α
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