我試圖通過io.compression.zip文件提供Get-ChildItem調用的結果來創建「E:\ Applications_Server_Test」的壓縮文件,不包括兩個文件夾「BACKUP」和「BACKUP2」。Powershell - 將文件夾/文件添加到zip,同時排除某些文件夾
但是,Powershell似乎將它解釋爲「$ items =一串目錄和文件名」,而不是我想壓縮的目錄和文件的遞歸集合。我可以找到有關使用Get-ChildItem排除目錄的教程,我可以找到關於如何壓縮完整目錄或壓縮多個目錄的教程,但是我無法找到任何有關排除目錄的壓縮目錄。有人可以告訴我我要去哪裏嗎?
$source = "E:\Applications_Server_Test"
$destination = "E:\AST_Dump.zip"
$items = Get-ChildItem $source -Recurse | ?{ $_.fullname -notmatch "\\backup\\?" }
Add-Type -assembly "system.io.compression.filesystem"
[io.compression.zipfile]::CreateFromDirectory($items, $destination)
謝謝!
請參閱[使用powershell壓縮文件](http://serverfault.com/a/456496) – wOxxOm
我有6個目錄和2個文件在此根目錄「Applications_Server_Test」文件夾中。 BACKUP 備份服務器 DIR1 DIR2 DIR3 DIR4 Genericfile.txt Genericfile.dat 我只是不包括兩個備份文件夾,但我還是想等四個文件夾,任何遞歸文件和文件夾的兩根級別的文件。我想用Powershell將剩餘的文件和文件夾打包到一個zip文件中。我唯一的選擇是象徵性地鏈接我想要的其他地方的所有東西並打包它或爲每個文件夾創建一個.zip? –