首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于将文件从父目录复制到许多子目录中的特定文件夹的DOS命令

用于将文件从父目录复制到许多子目录中的特定文件夹的DOS命令
EN

Stack Overflow用户
提问于 2011-07-19 00:54:53
回答 3查看 2.8K关注 0票数 1

我正在尝试自学一些简单的DOS命令,并使用相对简单的命令来复制或移动文件,但是这个特定的请求对我来说是一个挑战,希望能从这个论坛中获得一些专业知识。

代码语言:javascript
运行
复制
C:\Parent\library.eds   (location of my source file)

每当我更新父目录中的library.eds时,我希望将该文件复制到每个包含名为"LIB“的文件夹的子目录中。我已经将子目录标准化为以下内容:

代码语言:javascript
运行
复制
C:\Parent\Child1\INPUT
C:\Parent\Child1\OUTPUT
C:\Parent\Child1\LIB      {paste library.eds here}

C:\Parent\Child2\INPUT
C:\Parent\Child2\OUTPUT
C:\Parent\Child2\LIB      {paste library.eds here}

并循环遍历,直到具有LIB目录的所有子目录都包含更新后的文件"library.eds“

谢谢你的帮助!标记

EN

回答 3

Stack Overflow用户

发布于 2011-12-03 10:27:00

这是一个可以让你开始的命令:

代码语言:javascript
运行
复制
FOR /F "delims=" %%D IN ('DIR /b /a:D /s C:\Parent\LIB') DO @ECHO COPY "C:\Parent\library.eds" "%%~D"

一旦您让它以您想要的方式工作,删除@ECHO部件以实际执行复制:

代码语言:javascript
运行
复制
FOR /F "delims=" %%D IN ('DIR /b /a:D /s C:\Parent\LIB') DO COPY "C:\Parent\library.eds" "%%~D"

这些命令的额外帮助

代码语言:javascript
运行
复制
HELP FOR
HELP DIR

它是如何工作的

代码语言:javascript
运行
复制
FOR /F ... %variable IN ('command') DO otherCommand %variable...

这使您可以执行command,并循环遍历其输出。每一行都将被填充到%variable中,并且可以在otherCommand中扩展任意次数。实际使用的%variable只能使用单个字母的名称,例如%V

代码语言:javascript
运行
复制
"delims="

这使您可以忽略'command'输出的任何空格,因此它可以正确地处理名称中包含空格的目录。

代码语言:javascript
运行
复制
DIR /b /a:D /s C:\Parent\LIB

这将搜索C:\Parent下名称为LIB的所有文件。由于/s的原因,它将递归地遍历子目录。它将只查找目录(由于/a:D)。它将以一种对循环有用的方式输出它们,这是因为/b

代码语言:javascript
运行
复制
%%D instead of %D

这在批处理文件中是必需的。如果在命令提示符下执行此操作,则应改用%P。

票数 1
EN

Stack Overflow用户

发布于 2011-07-19 01:02:38

如果您事先知道所有的子目录,那么最简单的解决方案就是批处理文件tutorial on batch files

我不知道在ms dos中循环是如何工作的,但在linux中bash shell循环很容易编程。

无论如何,批处理文件都是最简单的选择

票数 0
EN

Stack Overflow用户

发布于 2011-07-19 01:42:15

如果您可以下载cygwin,那么您可以使用以下bash脚本来完成此工作,而无需对其进行硬编码

The code

附注:您需要将文件夹名称从tmp更改为LIB,并将文件名从LOL更改为ur文件名。脚本是不言而喻的。

Unix shell比MS-DOS更好,所以无论如何获取cygwin可能是个好主意

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6736437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档