[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何实现将文件复制到指定路径/目录

本帖最后由 pcl_test 于 2017-6-5 13:27 编辑

代码编译完成后,想把exe文件自动copy到PC的另一个目录(覆盖原来的文件)或另一台PC的共享目录,如何用批处理实现?
几个假设:
1.本机的IP:192.168.0.104
2.编译后目标文件是D:\NEXPERIA\...\exApp目录下的test.exe
3.目标PC的IP:192.168.0.102
4.目标PC开放的共享目录为D:\share

想要的结果是:代码编译完成后,批处理自动把test.exe文件copy到目标PC的指定目录,覆盖之前的版本,便于开发测试

请p处理高手指点,多谢!!

[ 本帖最后由 baggio1006 于 2008-8-10 00:45 编辑 ]

  1. @echo off
  2. copy /y "%~f0" "C:\test\a"
复制代码

TOP

因为在开发中随时编译,编译后的exe文件,要求能自动即时copy到指定的目录,那么批处理程序如何知道这个exe是重新生成的呢?
能否稍微详细点介绍呢?谢谢

TOP

你在用什么做开发?用什么编译?
要在你的程序中调用批处理?还是有一个单独的批处理常驻内存?

TOP

单独的批处理常驻内存吧,虽然这样比较耗费资源
只要能实现编译后的目标文件,自动copy到指定目录就行

TOP

因为在自己PC开发,到另一台PC环境去调试
这样免得手动去copy了

TOP

  1. @echo off
  2. :begin
  3. copy /y "C:\源文件夹\test.exe" "C:\目的文件夹"
  4. ping -n 2 127.1>nul
  5. goto :begin
复制代码

TOP

这样可以做到,编译完成后,就能立马copy到指定目录吗?
ping -n 2 127.1>nul
请问这个语句什么意思?

TOP

goto岂不是一直在copy,无论新的exe文件是否编译完成

TOP

回复 9楼 的帖子

  1. @echo off
  2. copy /y "C:\test\a.txt" "C:\test\folder"
  3. :begin
  4. for %%a in ("C:\test\a.txt") do set cur=%%~ta
  5. for %%a in ("C:\test\folder\a.txt") do set last=%%~ta
  6. if %cur% neq %last% copy /y "C:\test\a.txt" "C:\test\folder"
  7. ping -n 2 127.1>nul
  8. goto :begin
复制代码

TOP

回复 8楼 的帖子

ping -n 2 127.1>nul
是批处理中的一种延时手段
你可以把-n后面的2修改成其他数字来改变延时的长短

TOP

  1. @echo off
  2. net  use \\192.168.0.102\ipc$
  3. :begin
  4. xcopy /d /y test.exe \\192.168.0.102\share\test.exe
  5. ping -n 2 127.1>nul
  6. goto begin
复制代码
xcopy加参数D后,只有当源文件比目标文件新的时候才进行拷贝。

[ 本帖最后由 shqf 于 2008-8-10 10:07 编辑 ]

TOP

返回列表