Windows 下如何复制某个目录下指定后缀名的文件到另一个目录(保持目录结构),并覆盖已存在的文件?

2018-02-25 19:34:05 +08:00
 coolair
2202 次点击
所在节点    问与答
11 条回复
yukiww233
2018-02-25 20:58:32 +08:00
1.目录下搜索*,按照后缀排序,删除所有非指定后缀文件
2.覆盖目录
3.还原回收站所有内容
des
2018-02-25 21:03:51 +08:00
xcopy 了解一下?
zheng462601
2018-02-25 21:07:09 +08:00
geelaw
2018-02-25 21:26:04 +08:00
@des 这个方法是不行的,因为 xcopy 会使用 8.3 名,导致意外多复制文件。

先用 xcopy 建立目录结构,然后用 PowerShell 的 Get-ChildItem 配合 Resolve-Path 和 Copy-Item 来做吧,但是这样比较慢,更快的方法是自己写一个用来 walk 目录树的代码。
xupefei
2018-02-25 21:33:36 +08:00
robocopy 就是干这个的。
```
robocopy from to *.* /mir /xf *.pdb /xf *.obj
```
上面这样会复制所有文件,除了*.pdb 和 *.obj 。
/xf 排除
/ia 包含
/mir 强制覆盖+删除 to 里存在的、from 里不存在的文件

https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/robocopy
geelaw
2018-02-25 21:45:39 +08:00
@xupefei robocopy 也有 8.3 的问题,要做正确的长文件名过滤必须用自定义的程序。
xml123
2018-02-25 23:09:49 +08:00
powershell 了解一下
wzxlovesy
2018-02-25 23:16:45 +08:00
python 了解一下
WhatIf
2018-02-25 23:21:33 +08:00
很久以前一直想想写个类似小工具, 然而到现在还没动手写过。
我的想法倒是和后缀扩展名无关, 主要是指定原目录下的文件,然后拷贝到目的目录下,且保持目录结构(不存在则主动新建)
loading
2018-02-26 05:18:46 +08:00
fastcopy 了解一下
ifaii
2018-02-26 08:49:35 +08:00
我有过这样的需求,写了 Python 脚本,我去找找

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/432534

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX