在 PowerShell 中使用 7-Zip 壓縮
許多具有高壓縮比的檔案歸檔軟體在市場上隨處可見。其中之一是名為 7-Zip
的程式。
然而,在其他壓縮軟體中,7-Zip 的眾多優勢之一是它們可以通過程式設計方式或使用 PowerShell 等命令列直譯器進行壓縮。
本文將討論如何在 PowerShell 中使用 7-Zip 軟體進行壓縮。
在 PowerShell 中使用 7-Zip 壓縮
在嘗試使用 PowerShell 使用 7-Zip 進行壓縮之前,我們必須確保在我們的計算機上安裝了 7-Zip。找到安裝目錄和可執行檔案,並在 PowerShell 變數中分配整個安裝路徑,如下面的程式碼。
$7zipPath = "$env:ProgramFiles\7-Zip\7z.exe"
讓我們通過給它一個別名來使可執行檔案看起來像是與我們的本機 PowerShell 指令碼環境融合在一起。如果你長期從事 PowerShell 開發,你可能知道動詞-名詞對格式是命名 PowerShell 命令時的最佳實踐。
我們將使用類似以下程式碼的 Set-Alias
命令來建立新別名。
如你所見,我們使用 Compress-7Zip
命令作為可執行檔案的名稱,這與上述最佳實踐直接一致。但是,當然,你可以將其命名為任何你想要的名稱。
示例程式碼:
Set-Alias Compress-7Zip $7ZipPath
現在讓我們宣告需要壓縮的檔案或資料夾,以及完成後將壓縮存檔傳送到哪裡。為此,請在每個 PowerShell 變數上分配要壓縮的檔案及其目標位置。
示例程式碼:
$Source = "C:\Events\System.txt"
$Destination = "c:\PS\Events.zip"
最後,我們現在可以開始使用 7-Zip 進行壓縮。對於所有 7-Zip 命令列引數,我們可以參考 7-Zip 官方文件連結。
但是,要壓縮檔案,我們可以使用以下引數。
示例程式碼:
Compress-7zip a -mx=9 $Destination $Target
根據官方文件,引數 -mx=9
將壓縮級別設定為 9
,這將是軟體的最高壓縮率。
既然你現在可以在 PowerShell 中使用 7-Zip,那麼還值得分享的是,如果你沒有安裝 7-Zip,你將無需擔心。Windows PowerShell 有它的本機命令,可以使用 Compress-Archive
命令壓縮檔案,你可以通過單擊此連結來學習它們。
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn