比如說有A/B/C三個文件夾,每個文件夾裏分別有 1.dwg/2.dwg/3.dwg這三個文件。 我現在有一份最新的 1.dwg/2.dwg/3.dwg這三個文件,需要替換掉原來的 A/B/C三個文件夾裏的文件,該怎麼做? 簡單的複製肯定不行,實際上有上千個文件夾和文件需要替換,請大神指點。


用Total Commander來做啊。

  1. 利用TC的搜索功能,把這上千個文件夾集中起來
  2. 全選,然後,批量生成文件夾的快捷方式到對面窗口
  3. 把這些文件夾的快捷方式選中,你就可以用TC來複制了,見圖中箭頭指向的選項。


linux 下面超簡單的事情,你可以用 wsl 或者其他提供 linux 操作環境的命令行程序來解決。

不過我建議你,這麼大量的重複做文件覆蓋,你肯定目錄規劃有問題。


有一個批量文件夾一鍵重命名工具很簡單就可以解決你的問題。

2.還有一個拖把更名器也是很方便的,它可以直接批量對文件夾更名,包括後綴也可以修改哦。

鏈接:https://pan.baidu.com/s/133MIJGRguxDdjQEPaC0ukg

提取碼:pmyk

希望對你有幫助~~


寫個bat就行了

dir遍歷2個文件夾,文件名相同的就複製一遍。

效率可能差點,但是不用手動了。


一句話代碼(超級小白級)

cmd /K (cd /d "複製目錄" for /F "delims=" %a in (dir /ad /b) do (copy /Y "文件目錄*" "%~a"))

自行修改目錄路徑。

複製目錄 指文件夾所在的目錄。示例:

D:工作目錄 的內容為

文件夾1

文件夾2文件夾3...

文件目錄 指文件所在的目錄。示例:

D:工作文件 的內容為

文件1.txt文件2.doc文件3...

直接打開 我的電腦/此電腦,直接粘貼代碼,完事!

示例:

cmd /K (cd /d "D:工作目錄" for /F "delims=" %a in (dir /ad /b) do (copy /Y "D:工作文件*" "%~a")

就這裡粘貼

命令解釋:將 文件目錄 下的所有文件複製到 複製目錄 下的所有文件夾內

...

一句話代碼(命令提示符)

cd /d "複製目錄" for /F "delims=" %a in (dir /ad /b) do (copy /Y "文件目錄*" "%~a")

win+R,輸入cmd,確認,粘貼以上代碼,enter

...

bat腳本版:

以下代碼保存為txt,然後修改擴展名為cmd即可運行。

修改 加粗顯示 部分即可。

@ echo off

set 文件目錄=D:工作目錄(示範)rem 上方輸入待複製文件所在文件夾。該文件夾下的所有文件均會被複制(不含子目錄)set 複製目錄=D:工作文件(示範)rem 上方輸入待複製文件夾所在目錄。"文件"目錄下的所有文件(不含子目錄),均會複製到"複製目錄"下的所有一級子文件夾內。echo 正在複製,請稍等。cd /d "%複製目錄%" for /F "delims=" %%a in (dir /ad /b) do (copy /Y "%文件目錄%*" "%%~a")rem 將 文件目錄 下的所有文件複製到 複製目錄 下的所有文件夾內。echo 複製完成pause&>nul


有上千個文件和上千個文件夾需要替換,不知道怎樣才能降低錯誤 完整的覆蓋到


用VBA的Filecopy方法解決,假如文件夾結構是這樣的:

新建個excel表格,alt+F11,新建模塊,把代碼粘貼進去。

Sub 提取文件信息()
Application.DisplayAlerts = False
Dim arr(1 To 2000) As String
Dim f, i, k, f2, f3, x
*******遍歷獲取文件夾*******
arr(1) = ThisWorkbook.Path ""
i = 1: k = 1
Do While i &< UBound(arr) If arr(i) = "" Then Exit Do f = Dir(arr(i), vbDirectory) Do If InStr(f, ".") = 0 And f & "" Then
k = k + 1
arr(k) = arr(i) f ""
End If
f = Dir
Loop Until f = ""
i = i + 1
Loop
*******下面是替換*******
For x = 2 To UBound(arr)
FileCopy arr(1) "A.docx", arr(x) "A.docx"
FileCopy arr(1) "B.docx", arr(x) "B.docx"
FileCopy arr(1) "C.docx", arr(x) "C.docx"
Next x
Application.DisplayAlerts = True
End Sub


推薦閱讀:
相關文章