$from = "C:\temp\large_log.txt"
$rootName = "C:\temp\large_log_chunk"
$ext = "txt"
$upperBound = 1MB


$fromFile = [io.file]::OpenRead($from)
$buff = new-object byte[] $upperBound
$count = $idx = 0
try {
    do {
        "Reading $upperBound"
        $count = $fromFile.Read($buff, 0, $buff.Length)
        if ($count -gt 0) {
            $to = "{0}.{1}.{2}" -f ($rootName, $idx, $ext)
            $toFile = [io.file]::OpenWrite($to)
            try {
                "Writing $count to $to"
                $tofile.Write($buff, 0, $count)
            } finally {
                $tofile.Close()
            }
        }
        $idx ++
    } while ($count -gt 0)
}
finally {
    $fromFile.Close()
}

Hej znalazlem kod w powershell sluzacy do dzielania dużych plikow na mniejsze. działa bardzo szybko. Potrzebuje jednej modyfikacji. Czy istnieje mozliwosc modyfikacji zeby nie dzielilo mi linni na pół (urywa w losowym miejscu przy osoiagnieciu $upperBound = 1MB). Chodzi mi o to zeby zachowany byl ten roziar bufora ale zeby dzielilo tylko całe linie. Moze ktos pomoc ? czy to jest możliwe ?