PowerShell 解壓
ZIP 檔案型別通過將檔案壓縮為單個檔案來最小化其大小。這種方法可以節省硬碟空間,加密資訊,並使彼此交換檔案變得簡單。
PowerShell 使用 Expand-Archive 命令從 ZIP 檔案所在的同一目錄或指定目標路徑上的特定 Zip 檔案中提取檔案和資料夾。
在這裡,我們可以使用兩種不同的語法進行刪除。這兩個可以單獨使用,但不能組合使用。
Expand-Archive
語法 1
這裡使用了路徑屬性,在給出路徑時可以使用萬用字元。
Expand-Archive
[-Path] <String>
[[-DestinationPath] <String>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Expand-Archive
語法 2
下一個選項是文字路徑。這裡,給出的路徑應該是準確的,因為它被認為是給定的,並且不允許使用萬用字元。如果路徑包含轉義字元,請將每個轉義字元括在單引號內,以告訴 PowerShell 不應將任何字元解釋為轉義模式。
Expand-Archive
-LiteralPath <String>
[[-DestinationPath] <String>]
[-Force]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Expand-Archive
引數
下面給出了最常用引數的名稱和描述。
引數名稱 | 說明 |
---|---|
-Confirm |
在執行 cmdlet 之前提示確認 |
-DestinationZip |
指定解壓縮資料夾的路徑。如果資料夾不存在,則建立目標資料夾 |
-Force |
在不確認的情況下強制執行 cmdlet |
-LiteralPath |
給出存檔檔案的路徑。文字路徑值完全按照其給定。 |
-PassThru |
輸出從存檔擴充套件的檔案列表 |
-Path |
指定歸檔檔案的路徑 |
-WhatIf |
顯示如果 cmdlet 在沒有實際執行的情況下執行會發生什麼 |
PowerShell 解壓縮檔案示例
示例 1:
當前目錄中的當前存檔檔案的專案被提取到此示例中的 -DestinationPath
選項提供的資料夾中。
Expand-Archive -Path test.Zip -DestinationPath C:\Test
示例 2:
從存檔中提取檔案比建立檔案更容易。你所要做的就是提供存檔的名稱和解壓縮檔案的目標位置。使用 Expand-Archive cmdlet,下面的程式碼將測試 zip 存檔的內容匯出到目標路徑變數中的指定資料夾 TestUnzipped。
Expand-Archive -LiteralPath 'C:\Archives\test[v1].Zip' -DestinationPath C:\TestUnzipped
由於檔名包含可能被解釋為萬用字元的字元,因此使用了 LiteralPath 選項。
如果不使用 -DestinationPath 引數,PowerShell 會將檔案解壓縮到當前根資料夾中,並使用 Zip 檔案的檔名構建一個新資料夾。
當 PowerShell 嘗試提取檔案時,如果該目錄現在存在於目標中,則會引發錯誤。使用 -Force
引數,你可以推送 PowerShell 以用新資料替換舊資料。
僅當確實不再需要舊檔案時才應使用 -Force
引數,因為它將永久覆蓋你計算機上的檔案。
ZIP 檔案將檔案和目錄壓縮並儲存到單個文件中。無需安裝任何軟體,PowerShell 就可以通過各種方法檢索它們。上述方法適用於跨平臺和原生應用程式。
Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.