如何在 Windows 7 中将一个文件复制到一个文件夹及其所有子文件夹?
例如:
file.txt
将复制到
folder/file.txt
folder/sub1/file.txt
folder/sub2/file.txt
答案1
此例中,目录 c:\prc\a\fa 中有一个名为 file1 的文件,还有子目录 a,b,c,d
如果你删除单词 echo,那么 for /f ......... 这行代码就可以了
C:\prc\a\fa>dir /b/s/ad <ENTER>
C:\prc\a\fa\a
C:\prc\a\fa\b
C:\prc\a\fa\c
C:\prc\a\fa\d
C:\prc\a\fa>for /F %f in ('dir /b/s/ad') do echo copy file1 %f <ENTER>
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\a
copy file1 C:\prc\a\fa\a
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\b
copy file1 C:\prc\a\fa\b
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\c
copy file1 C:\prc\a\fa\c
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\d
copy file1 C:\prc\a\fa\d
C:\prc\a\fa>
此 FOR 也可以这样做
C:\prc\a\fa>for /r %f in (.) do echo copy file1 %f
只需删除回声
可能有比把 . 放进去更好的方法,但它工作得很好
C:\prc\a\fa>for /r %f in (.) do echo copy file1 %f <ENTER>
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\.
copy file1 C:\prc\a\fa\.
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\a\.
copy file1 C:\prc\a\fa\a\.
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\b\.
copy file1 C:\prc\a\fa\b\.
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\c\.
copy file1 C:\prc\a\fa\c\.
C:\prc\a\fa>echo copy file1 C:\prc\a\fa\d\.
copy file1 C:\prc\a\fa\d\.
C:\prc\a\fa>
答案2
您可以使用以下 PowerShell 脚本:
dir -Recurse -Directory|
foreach { copy \Path\To\File.txt $_.FullName }
将以上内容保存到 copy1tomany.ps1 文件中。按 Ctrl+Win 并输入 powershell 以获取 Powershell 提示符。导航到文件夹并输入 copy1tomany.ps1。