Witaj Mam w jednym katalogu około 5000 plików tekstowych (TXT). Pliki są rozdzielane przecinkami. Próbuję zmienić format daty (jest przechowywany w pierwszej kolumnie każdego pliku) z M / d / rrrr na MM / dd / rrrr. W tych 5000 plikach jest około 1 miliona wierszy, więc mam nadzieję, że istnieje jakiś skuteczny sposób, aby to zrobić. Czytałem gdzieś, że do obsługi tak dużej liczby danych poleceniem StreamWriter jest dobry sposób, ale nie jestem pewien, czy można go użyć w moim przypadku. Dziękuję za wszelkie sugestie.
Używam tego skryptu do usuwania drugiego i ostatniego wiersza wielu plików tekstowych za pomocą StreamWriter. Jest bardzo szybki i wydajny. Mam nadzieję, że przy niewielkich modyfikacjach można go użyć do zmiany formatów dat w pierwszej kolumnie. Mam zaledwie 2 tygodnie doświadczenia z PS, więc jest to dla mnie duże wyzwanie.
dir *.txt | %{
$content = gc $_.FullName
$output = @($content | select -First 1 )
$output += $content[2..($content.count -2)]
$sw = New-Object System.IO.StreamWriter($_.FullName,$false)
$output | %{$sw.WriteLine($_)}
$sw.close()
}