Фильтровать файл CSV по месяцам с помощью Powershell - PullRequest
0 голосов
/ 15 мая 2018

Я хочу удалить все строки из огромного CSV-файла, кроме тех, которые записаны в марте.У меня есть сценарий PS, который работает для других элементов, но, похоже, не работает для этого:

$SourceFile = 'C:\Temp\Users_with_IP_20180409.CSV'
$startDate = "3/1/2018"
$endDate = "3/31/2018"

(Get-Content $SourceFile) | where { $_.LocalTime -ge $startDate -and $_.LocalTime -lt $endDate } | Set-Content $SourceFile

Attaching an image of my CSV file.

1 Ответ

0 голосов
/ 16 мая 2018

Скрипт с датой начала / окончания, приведенный к [datetime]:

$SourceFile = 'C:\Temp\Users_with_IP_20180409.CSV'
$TargetFile = 'C:\Temp\Users_with_IP_20180409_sans_March.CSV'
$startDate = [datetime]"3/1/2018"
$endDate   = ([datetime]"3/31/2018").AddDays(1).AddSeconds(-1)

(Import-Csv $SourceFile) | 
    Where-Object { (Get-Date $_.LocalTime) -lt $startDate -or
                   (Get-Date $_.LocalTime) -gt $endDate } | 
        Export-Csv $TargetFile -NoType
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...