這篇文章主要介紹了PowerShell實現的文件同步腳本分享,本文直接給出實現代碼,需要的朋友可以參考下
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #分別定義源、目標文件夾,注意大小寫敏感 $folder_a_path = "D:a" $folder_b_path = "D:b" #遍歷源文件夾下所有文件 $folders_a = gci $folder_a_path -Recurse foreach ($folder_a in $folders_a) { #通過替換的方式,取目標文件的全路徑名稱 $b = $folder_a.fullname.replace($folder_a_path,$folder_b_path) #判斷目標文件是否存在,如果存在則先判斷新舊 If (test-path $b) { #判斷目標是否為目錄,如果是目錄則跳過,如果不跳過,則會創建一級空目錄 If (!((gi $b).PSIsContainer)) { #判斷目標文件、源文件的新舊情況,如果目標已存在文件的修改時間早於源文件,則重新拷貝覆蓋 If ((gci $b).lastwritetime -lt $folder_a.lastwritetime) { copy-item $folder_a.fullname $b -force } } } #如果目標文件不存在,則直接拷貝 Else { copy-item $folder_a.fullname $b } }