在 PowerShell 中複製帶有子資料夾的資料夾

Rohan Timalsina 2023年1月30日
  1. 在 PowerShell 中複製帶有子資料夾的資料夾
  2. 在 PowerShell 中使用 Copy-Item Cmdlet 複製帶有子資料夾的資料夾
在 PowerShell 中複製帶有子資料夾的資料夾

本教程將教你在 PowerShell 中複製帶有子資料夾的資料夾。

在 PowerShell 中複製帶有子資料夾的資料夾

大多數情況下,系統管理員必須執行各種檔案和資料夾操作。將資料夾內容從一個位置複製到另一個位置就是其中之一。

PowerShell 支援處理系統中不同的資料夾操作。使用 PowerShell 控制檯,你可以建立、複製、移動、重新命名和刪除資料夾。

使用複製和貼上選項或拖放功能只需單擊幾下即可輕鬆複製資料夾。但是,當你有很多資料夾要複製到各個位置時,這將需要很長時間。

你可以執行 PowerShell 指令碼或命令來自動執行資料夾複製任務。複製時,你可能還必須複製資料夾的子資料夾和內容。

在 PowerShell 中使用 Copy-Item Cmdlet 複製帶有子資料夾的資料夾

Copy-Item cmdlet 將專案從一個位置複製到另一個位置。你可以使用此 cmdlet 將資料夾及其內容複製到指定位置。

你將需要提供從一個地方複製到另一個地方的源和目標路徑。 -Path 引數指定要複製的專案的路徑,-Destination 引數指定應複製專案的位置。

Copy-Item cmdlet 預設不列印任何輸出。 -PassThru 引數返回一個表示複製專案的物件。

這是將資料夾 C:\test_folder1 複製到 C:\New 的示例。

Copy-Item -Path "C:\test_folder1" -Destination "C:\New" -PassThru

輸出:

    Directory: C:\New


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----         2/23/2022  11:43 PM                test_folder1

它只複製資料夾而不復制其內容。

Get-ChildItem "C:\New"

輸出:

 Directory: C:\New


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----         2/23/2022  11:43 PM                test_folder1
-a----         2/3/2022  12:36 PM             81 python.txt
-a----         2/3/2022  12:36 PM             84 test.txt

你將需要使用 -Recurse 引數來執行遞迴複製。它將帶有子資料夾的資料夾的所有內容複製到指定目錄。

以下命令將資料夾 C:\test_folder1 的內容複製到目錄 C:\pc

Copy-Item -Path "C:\test_folder1" -Destination "C:\pc" -Recurse

現在,驗證 test_folder1 的內容是否被複制。

Get-childItem "C:\pc\test_folder1"

輸出:

    Directory: C:\pc\test_folder1


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----         2/23/2022  11:22 PM                New folder
-a----         2/23/2022  10:29 PM              0 books.txt
-a----         2/23/2022  10:29 PM              0 hello.txt

如圖所示,所有帶有子資料夾的資料夾內容都被複制到指定位置。

如果你只想複製資料夾的內容而不是資料夾本身,則可以在源路徑中使用\*

例如:

Copy-Item -Path "C:\test_folder1\*" -Destination "C:\folder2" -Recurse

檢查目錄 C:\folder2 中的內容。

Get-ChildItem "C:\folder2"

如圖所示,這次沒有複製 test_folder1,而是將其所有內容複製到目錄 C:\folder2

輸出:

 Directory: C:\folder2


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----         2/23/2022  11:36 PM                New folder
-a----         2/23/2022  10:29 PM              0 books.txt
-a----         2/23/2022  10:29 PM              0 hello.txt

我們希望本教程可以幫助你使用 PowerShell 複製帶有子資料夾的資料夾。

作者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

相關文章 - PowerShell Folder