簡體   English   中英

如何使用 powershell zip 子目錄中的特定文件和文件夾

[英]How to zip specific files and folders in subdirectories using powershell

我有一個像這樣的文件夾結構

- folder1
  - folderA
  - folderB
    - backup
      - folder0
      - file1
      - file2
- folder2
  - folderX
  - folderY
    - backup
      - folder0
      - file1
      - file2

我想要 backup.zip 中文件夾“backup”中的文件和文件夾(在此示例中為“folder0”“file1”“file2”),並在完成后刪除文件夾“backup”。

我期望達到的結果的一個例子。

- folder1
  - folderA
  - folderB
    backup.zip
- folder2
  - folderX
  - folderY
    backup.zip

這是我到目前為止所擁有的。

Get-ChildItem '.' -r -Filter backup| ForEach-Object {Compress-Archive $_.FullName "$($_.DirectoryName)/$($_.BaseName)" | Remove-Item template}

這會在我工作的根目錄中創建一個 backup.zip 文件。它包含所有內容,包括不需要的文件夾“備份”。

以下將獲取所有名為 backup 的目錄,並遍歷它們以將其內容壓縮到備份目錄旁邊的 a.zip。 然后刪除備份目錄。

 Get-ChildItem '.' -r -Filter backup -Directory | ForEach-Object { Compress-Archive ($_.FullName+'\*') ($_.FullName+'.zip'); Remove-Item $_.FullName -r;}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM