-1

我需要使用 powershell 将数据库 .bak 拆分为多个文件。怎么做最好?有什么例子吗?

4

1 回答 1

1

像这样的东西可能会起作用:

$filename = "C:\path\to\your.bak"

$chunksize = 20480
$totalsize = (Get-Item $filename).Length

$stream = New-Object IO.FileStream($filename, [IO.FileMode]::Open)
$reader = New-Object IO.BinaryReader($stream)

$chunk = New-Object byte[] $chunksize
$size = $chunksize
$i = 0
do {
  $rest = $totalsize - ($i * $chunksize)
  $i++
  if ($chunksize -gt $rest) {
    $size  = $rest
    $chunk = New-Object byte[] $size
  }
  $reader.Read($chunk, 0, $size) | Out-Null
  [IO.File]::WriteAllBytes(({0}.{1:d3}" -f ($filename, $i)), $chunk)
} until ($chunksize -gt $rest)

$reader.Close()
$stream.Close()
于 2013-07-12T16:43:58.967 回答