timasadovykh@vk |
30-01-2021 00:24 2947959 |
Изменение даты и времени создания файла
Доброго вечера товарищи!
Хотел бы реализовать одну штучку
Имеется база файлов txt, допустим 2000.
Нужно присвоить дату и время , допустим "05.02.2021 20:20".
И самое главное, нужно после каждого третьего файла изменять дату создания увеличив ее на 5 мин
file1.txt "05.02.2021 20:20"
file2.txt "05.02.2021 20:20"
file3.txt "05.02.2021 20:20"
---------------------------------
file4.txt "05.02.2021 20:25"
file5.txt "05.02.2021 20:25"
file6.txt "05.02.2021 20:25"
---------------------------------
file7.txt "05.02.2021 20:30"
file8.txt "05.02.2021 20:30"
file9.txt "05.02.2021 20:30"
---------------------------------
и тд
|
Цитата:
Цитата timasadovykh@vk
Имеется база файлов txt, »
|
В чём имеется? В текстовом файле? Выложите его образец.
|
DJ Mogarych |
30-01-2021 09:27 2947973 |
Powershell:
Код:
[datetime]$initTime = "05.02.2021 20:20"
$files = dir "C:\temp\creationtime\*.txt" |sort {[int]($_.basename -replace '\D')}
$c = 1
foreach ($file in $files) {
$file.CreationTime = "$initTime"
$c++
if ($c -gt 3) {
$initTime = $initTime.AddMinutes(5)
$c = 1
}
}
Код:
$files |select Name,CreationTime
Name CreationTime
---- ------------
file1.txt 02.05.2021 20:20:00
file2.txt 02.05.2021 20:20:00
file3.txt 02.05.2021 20:20:00
file4.txt 02.05.2021 20:25:00
file5.txt 02.05.2021 20:25:00
file6.txt 02.05.2021 20:25:00
file7.txt 02.05.2021 20:30:00
file8.txt 02.05.2021 20:30:00
file9.txt 02.05.2021 20:30:00
file10.txt 02.05.2021 20:35:00
file11.txt 02.05.2021 20:35:00
file12.txt 02.05.2021 20:35:00
file13.txt 02.05.2021 20:40:00
file14.txt 02.05.2021 20:40:00
file15.txt 02.05.2021 20:40:00
file16.txt 02.05.2021 20:45:00
|
timasadovykh@vk |
30-01-2021 12:58 2948005 |
sort : Не удается преобразовать значение "9780597552" в тип "System.Int32". Ошибка: "Значение было недопустимо малым
или недопустимо большим для Int32."
C:\Users\Tima\Desktop\tett\123123.ps1:2 знак:45
+ ... C:\temp\creationtime\*.call" |sort {[int]($_.basename -replace '\D')}
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidResult: (C:\temp\creationtime\9780597552.call:PSObject) [Sort-Object], RuntimeE
xception
+ FullyQualifiedErrorId : ExpressionEvaluation,Microsoft.PowerShell.Commands.SortObjectCommand
Но изменил
PHP код:
Name CreationTime ---- ------------ 9103837192.call 02.05.2021 20:20:00 9780198817.call 02.05.2021 20:20:00 9780211925.call 02.05.2021 20:20:00 9780218107.call 02.05.2021 20:25:00 9780247148.call 02.05.2021 20:25:00 9780260274.call 02.05.2021 20:25:00
Спасибо)
|
DJ Mogarych |
30-01-2021 15:22 2948019 |
Я исходил из тех названий файлов, которые вы дали изначально.
Вполне естественно, что, запуская скрипт в других условиях, можно получить ошибки.
|
timasadovykh@vk |
30-01-2021 18:35 2948040 |
Как оказалось работает не корректно
Хотя если смотреть
Код:
$files |select Name,CreationTime
то он показывает
Код:
Name CreationTime
---- ------------
9103837192.call 31.05.2021 10:00:00
9780198817.call 31.05.2021 10:00:00
9780211925.call 31.05.2021 10:00:00
9780218107.call 31.05.2021 10:05:00
9780247148.call 31.05.2021 10:05:00
9780260274.call 31.05.2021 10:05:00
9780267898.call 31.05.2021 10:10:00
9780271412.call 31.05.2021 10:10:00
9780271413.call 31.05.2021 10:10:00
9780276680.call 31.05.2021 10:15:00
9780292143.call 31.05.2021 10:15:00
9780295704.call 31.05.2021 10:15:00
А по факту в том же total comander
Код:
9103837192.call 31.05.2021 10:00:00
9780198817.call 31.05.2021 10:55:00
9780211925.call 31.05.2021 10:55:00
9780218107.call 31.05.2021 11:00:00
9780247148.call 31.05.2021 11:00:00
9780260274.call 31.05.2021 11:00:00
9780267898.call 31.05.2021 11:05:00
9780271412.call 31.05.2021 11:05:00
9780271413.call 31.05.2021 11:05:00
9780276680.call 31.05.2021 11:10:00
9780292143.call 31.05.2021 11:10:00
9780295704.call 31.05.2021 10:10:00
И когда доходит до 40 минуты
Код:
9780218107.call 31.05.2021 11:40:00
9780247148.call 31.05.2021 11:40:00
9780260274.call 31.05.2021 11:40:00
9780267898.call 31.05.2021 10:55:00
9780271412.call 31.05.2021 11:45:00
9780271413.call 31.05.2021 10:50:00
9780276680.call 31.05.2021 10:50:00
9780292143.call 31.05.2021 10:00:00
9780295704.call 31.05.2021 10:00:00
9780276680.call 31.05.2021 10:05:00
9780292143.call 31.05.2021 10:05:00
9780295704.call 31.05.2021 10:05:00
В чем может быть проблема? Получается не переходит в другой час
|
DJ Mogarych |
30-01-2021 20:32 2948052 |
Тотал коммандер - это хорошо, а что в свойствах файла в Windows?
Сортировку проверяйте, возможно, из скрипта нужно убрать
Код:
{[int]($_.basename -replace '\D')}
и сделать
|
timasadovykh@vk |
30-01-2021 21:37 2948066 |
Интересно а как тоже самое выглядит на BASH..
Цитата:
Цитата DJ Mogarych
и сделать
Код:
|sort name »
|
Да оно работает, и нет ошибок. :Beer:
|
Время: 01:38.
© OSzone.net 2001-