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
nLnoOm



Joined: 22 Jun 2020
Posts: 2

Post (Separately) Posted: Mon Jun 22, 2020 02:03    Post subject: Изменение даты нескольких файлов с разницей в секунду Reply with quote

Здравствуйте все. Часто использую в Total Commander функцию "изменения атрибутов файла", меняю дату последнего изменения. Но когда выделяешь сразу несколько файлов и меняешь их дату, то она у всех становится одинаковая, а мне хотелось бы, чтобы она отличалась хотя бы на одну секунду.
То есть, к примеру, чтобы у 1.jpg была дата последнего изменения 22 ‎июня ‎2020 ‎г., ‏‎0:04:53, у 2.jpg 22 ‎июня ‎2020 ‎г., ‏‎0:04:54, у 3.jpg 22 ‎июня ‎2020 ‎г., ‏‎0:04:55, у 4.jpg 22 ‎июня ‎2020 ‎г., ‏‎0:04:56 и так далее. Как это можно сделать? Вручную не вариант.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jun 22, 2020 05:24    Post subject: Reply with quote

Code:
'=============================== VBS ===============================
' Установка даты модификации файлов с пошаговым изменением интервала
'
' Параметры: %WL <интервал> [-]<число интервалов> [/d]
' Примеры:   %WL s 1 /d  |  %WL n -5
'
' /d — ввод даты/времени в диалоге, иначе будут использованы текущие
' Интервал принимает следующие значения:  s - секунда
'                                         n - минута
'                                         h - час
'                                         d - день
'                                         ww - неделя
'                                         m - месяц
'                                         q - квартал
'                                         yyyy - год
'============================================== Автор: Flasher © ===
Option Explicit : Dim A, D, Y, List, Desc, F, c, Ins
Set A = WSH.Arguments : If A.Count = 0 Then WSH.Quit
D = Now : c = 0 : If A.Named.Exists("d") Then InputB
Set List = CreateObject("Scripting.FileSystemObject").OpenTextFile(A(0),,,-1)
Set Desc = CreateObject("Shell.Application").NameSpace(0)
Do: F = List.ReadLine
  If Right(F, 1) <> "\" Then Desc.ParseName(F)._
  ModifyDate = DateAdd(A(1), c, D) : c = c + A(2)
Loop Until List.AtEndOfStream : List.Close
Set List = Nothing : Set Desc = Nothing

Sub InputB
  Dim i, n, x
  For Each i in Split("sсекунд a ы |nминут a ы |hчас  а ов|dд ень " &_
  "ня ней|wнедел я и ь|mмесяц  а ев|qквартал  а ов|y год года лет", "|")
    If Left(i, 1) = Left(A(1), 1) Then i = Mid(i, 2) : Exit For
  Next
  n = Abs(Right(A(2), 2)) : x = Right(n, 1) : If x = 0 Or (n > 10 And _
  n < 21 Or x > 4 And x < 10) Then n = 3 Else If x = 1 Then n = 1 Else n = 2
  With CreateObject("htmlfile")
    Y = 96/.Parentwindow.Screen.deviceYDpi
    Y = 15*Y*(.Parentwindow.Screen.Height-188*Y)/2
  End With
  Do: D = Trim(InputBox(vbCr & "Интервал:" & vbTab & A(2) & " " &_
    Split(i)(0) & Split(i)(n) & vbCr & vbCr & Ins & vbCr & vbCr &_
    "Введите исходную дату и время:", " Установка дат модификации файлов", D,, Y))
    If D = "" Then WSH.Quit
    If Not IsDate(D) Then Ins = Space(18) & "Ошибка ввода!" Else Exit Do
  Loop
End Sub

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Tue Jun 23, 2020 13:21; edited 2 times in total
Back to top
View user's profile Send private message
nLnoOm



Joined: 22 Jun 2020
Posts: 2

Post (Separately) Posted: Mon Jun 22, 2020 21:29    Post subject: Reply with quote

Flasher, то что нужно, спасибо.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Tue Jun 23, 2020 01:05    Post subject: Reply with quote

nLnoOm
Пож-та. Всё-таки решил добавить отображение заданного интервала в окошке, чтобы не путаться.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
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