如何使用PowerShell僅複製更新或較新的檔案?


要使用PowerShell僅複製更新或較新的檔案,我們可以使用**Copy-Item**,並在指令碼中新增一些邏輯來檢查檔案是否存在於目標資料夾中;如果不存在,則複製該檔案;如果存在,則比較時間戳並複製最新的檔案。這會比較棘手,因為我們需要為此編寫幾行程式碼。

但Windows支援**xCopy**實用程式,它可以直接複製較新或更新的檔案,並且我們也可以在PowerShell中使用此實用程式。

xCopy使用一個名為**/d**的開關。其實際語法如下:

語法

/d [:MM-DD-YYYY]

這意味著如果指定了日期,它將複製比該日期更新的檔案和資料夾;如果沒有指定任何日期,它將複製所有已更新的檔案和資料夾。下面是一個示例。

C:\DSC

目標

E\Temp

我們的資料夾結構如下所示,**LabMachine2k16.mof**檔案也存在於目標位置,但它是更新後的檔案;**Test.txt**是新檔案;**Pagefile**資料夾是新資料夾,但它是空的。

示例

xcopy C:\DSC E:\Temp\ /s /d /e /f /y

輸出

PS C:\> xcopy C:\DSC E:\Temp\ /s /d /e /f /y
C:\DSC\LabMachine2k16.mof -> E:\Temp\LabMachine2k16.mof
C:\DSC\Test.txt -> E:\Temp\Test.txt
2 File(s) copied

開關。

/s – 指定子資料夾

/e – 指定空目錄

/d – 指定要複製的更新檔案

/f – 顯示源和目標。

/y – 無需使用者確認即可複製。

更新於:2021年3月18日

9K+瀏覽量

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.