DOS命令FOR批处理COPY指定目录下文件到指定目录

1 篇文章 0 订阅
这段时间,俺把自己写的Qt小项目的运行结果都截了个图sample.png保存,可是要想更新到git上的时候发现问题了,项目很多个,这要一个个COPY也还是有点工作量的。
思来想去,印象中DOS命令应该有这样的功能,于是,俺查了下好久不用的DOS命令。试验修改了几次命令,终于搞定。加上今天俺的 双塔食品SZ002481 涨停,心情极爽!遂记录在此!

![20161208STSP](https://img-blog.csdn.net/20161209120215248?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZG90MjIyMg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

for命令其实很简单,for命令帮助如下:

对一组文件中的每一个文件执行某个特定命令。

FOR %variable IN (set) DO command [command-parameters]

  %variable  指定一个单一字母可替换的参数。
  (set)      指定一个或一组文件。可以使用通配符。
  command    指定对每个文件执行的命令。
  command-parameters
         为特定命令指定参数或命令行开关。

在批处理程序中使用 FOR 命令时,指定变量请使用 %%variable 
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.

如果启用命令扩展,则会支持下列 FOR 命令的其他格式:

FOR /D %variable IN (set) DO command [command-parameters]

如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]

检查以 [drive:]path 为根的目录树,指向每个目录中的 FOR 语句。
如果在 /R 后没有指定目录规范,则使用当前目录。如果集仅为一个单点(.)字符,
则枚举该目录树。
。。。。。。
我们要的就是这个:FOR /D %variable IN (set) DO command [command-parameters]
于是按照这个方法写了COPY脚本:
    @ECHO OFF
    FOR /D %%I IN (*) DO (

    ECHO %%I

    IF EXIST "E:\QTP\%%I\sample.png" COPY "E:\QTP\%%I\sample.png" E:\MtQTP-OSCHINA\%%I\

    )
运行结果如下:

![运行结果](https://img-blog.csdn.net/20161209120309420?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZG90MjIyMg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

完成!还可以在每次修改后运行一次!保持更新!
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值