#powershell
#powershell
Вопрос:
Я пытаюсь добавить временную метку к каждой строке файла. Пока это работает нормально, и я получаю следующее:
0,16.4,34,8120,2814,0,0,0,2.44,0,0,8192,200,10/08/2020 12:46:30
1,2.34,34,8120,2813,0,0,0,2.44,0,0,8192,200,10/08/2020 12:46:30
Однако я хочу, чтобы это продолжало увеличиваться на 30 секунд.
Я использую эту переменную time в своем скрипте:
$parsedtime = [System.DateTime]::ParseExact($timeformat,'yyMMddHHmm',$null)
$parsedtime
Я могу заставить его добавлять нормально:
$parsedtime2 = $parsedtime.AddSeconds(30);
Но я не могу заставить его продолжать добавлять 30 секунд к каждой временной метке:
ForEach ($_ in $file)
{
$_ "," ($parsedtime).AddSeconds(30)
}
Возможно ли продолжать цикл AddSeconds внутри цикла ForEach?
Ответ №1:
Вы должны присвоить обратно переменной:
ForEach ($_ in $file)
{
$parsedtime = $parsedtime.AddSeconds(30)
$_ "," $parsedtime
}
Кроме того, отследите, сколько итераций у вас было:
$i = 0
ForEach ($_ in $file)
{
$i
$_ "," ($parsedtime).AddSeconds(30 * i)
}
Комментарии:
1. ВААААххх, это было оно…. Я слишком долго смотрел на это, ха-ха. большое вам спасибо, сработало как по волшебству.