标题: [文件操作] 求助:菜鸟一只,复制某文件到指定文件夹,批处理如何操作? [打印本页]
作者: imloveint 时间: 2011-10-13 16:23 标题: 求助:菜鸟一只,复制某文件到指定文件夹,批处理如何操作?
本帖最后由 imloveint 于 2011-10-14 09:20 编辑
欲用批处理复制某路径(不确定)下的文件到另一路径(确定),如果目标路径下此文件存在则略过,过程中不应该有提示。
举例:(此文件即为我拟复制的文件,但路径是不同的)d:\msvbvm60.dll复制到c:\windows\system32下,如果msvbvm60.dll存在,则略过,但不提示是否覆盖,msdos窗口自动关闭。怎么做?
补充:我想复制的文件只有一个,文件名是确定的,就是msvbvm60.dll。我的想法是把我欲复制的文件和批处理放在一个文件夹下,但文件夹是不确定的(可能是D:\,也可能是E:\123),但复制到的位置是确定的,就是c:\windows\system32,这个怎么弄?
作者: 601997526 时间: 2011-10-13 16:46
本帖最后由 601997526 于 2011-10-13 16:53 编辑
- @echo off
- set 文件=d:\msvbvm60.dll
- set 路径=c:\windows\system32
- for %%i in (%文件%) do (cd %%~dpi&%%~di&set 文件=%%~nxi)
- if not exist "%路径%\%文件%" copy "%文件%" "%路径%"
复制代码
作者: imloveint 时间: 2011-10-13 20:12
这个……看不懂啊。似乎是用循环?不用吧?我就复制一个文件。如果把批处理放在源文件所在的文件夹下,是不是就不用那些%什么的了?
作者: imloveint 时间: 2011-10-13 20:13
本帖最后由 imloveint 于 2011-10-13 20:15 编辑
另外,这第二句,似乎是把路径确定为D:\了?这样不行啊,这个路径会变的。
我的想法是把我欲复制的文件和批处理放在一个文件夹下,但文件夹是不确定的,但复制到的位置是确定的,就是c:\windows\system32,这个怎么弄?
作者: Batcher 时间: 2011-10-13 20:43
回复 4# imloveint
请把所有的需求全部更新到顶楼
作者: imloveint 时间: 2011-10-14 09:21
已经重新更新了。这个问题应该是比较简单的,在论坛上查资料弄也应该能弄成,但我现在急用,所以就麻烦大家了。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |