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

[文件操作] [已解决]批处理怎样复制文件到指定目录?

G:\MARC\500本MARC数据  这个路径下有几百个 *.ISO 文件   要复制到D:\成品测试\*\meta 目录下
条件是当*=*时  复制
例如:
G:\MARC\500本MARC\09012345.ISO   复制到D:\成品测试\09012345\meta 目录下
因为09012345.ISO 和D:\成品测试\09012345\meta 中的 09012345相同
谢谢啦!
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2
非常好的论坛

本帖最后由 001011 于 2011-9-13 13:00 编辑

能自己判断吗
非常好的论坛

TOP

  1. @echo off
  2. start cmd /c "copy G:\MARC\500本MARC数据\09019472.iso D:\成品测试\09019472\meta"
  3. start cmd /c "copy G:\MARC\501本MARC数据\09019490.iso D:\成品测试\09019490\meta"
复制代码
1

评分人数

    • 001011: 谢谢啦 能自动判断吗技术 + 1

TOP

谢谢楼上的  要是能自己判断就好了 每次要做列表也很慢
非常好的论坛

TOP

本帖最后由 wangqi0077 于 2011-9-13 15:39 编辑

试下这个看看..不是很会
  1. for %%i in (*.iso) do echo %%i>>tmp.txt
  2. for /f "delims=."  %%j in (tmp.txt) do echo %%j >>tmp2.txt
  3. for /f %%m in (tmp2.txt) do copy %%m.iso D:\成品测试\%%m\meta\%%m.iso
  4. pause
复制代码
把所有ISO文件名写到TMP.TXT里面.然后把.ISO前面的文件名提取出来放到TMP2.TXT里面.然后再一行一行对比复制了..一行就是一个文件名...呵暂时只想到这些.新手.应该是可行的.
2

评分人数

我是一个新手.看到此签名的请发点教程我!!谢谢!!

TOP

本帖最后由 001011 于 2011-9-13 15:43 编辑

谢谢您
文件名写到tmp.txt里面  但是从哪儿复制呢
脚本里面我没有看到G:\MARC\500本MARC数据   路径呀
非常好的论坛

TOP

直接把这个批处理就丢到500里面好了.
免得写文件路径麻烦.
如果要复制过去的路径还没有创建的话.可以在倒数第二行加上这个.
for /f %%n in (tmp2.txt) do md D:\成品测试\%%n\meta
我是一个新手.看到此签名的请发点教程我!!谢谢!!

TOP

创建完了再复制...也行..我试的就只是几个文件来试的..
我是一个新手.看到此签名的请发点教程我!!谢谢!!

TOP

非常OK  谢谢啦  真棒
非常好的论坛

TOP

回复 5# wangqi0077


没必要用临时文件
  1. @echo off
  2. for %%a in ("G:\MARC\500本MARC数据\*.iso") do (
  3.     start cmd /c "copy %%a D:\成品测试\09019472\meta"
  4. )
复制代码

TOP

回复 10# awk
这个不行呀  怎么把500里面的全部复制到一个文件夹里面去了
非常好的论坛

TOP

回复  wangqi0077


没必要用临时文件
awk 发表于 2011-9-13 18:43



    这个不行呀  怎么把500里面的全部复制到一个文件夹里面去了
非常好的论坛

TOP

回复 11# 001011
  1. @echo off
  2. for %%a in ("G:\MARC\500本MARC数据\*.iso") do (
  3.     start cmd /c "copy %%a D:\成品测试\%%~na\meta"
  4. )
复制代码
1

评分人数

TOP

回复  001011
awk 发表于 2011-9-13 20:27



    谢谢啦  这样方便多了  可惜今天不能加分了  明天吧
非常好的论坛

TOP

这个也可以吧!
  1. set i=G:\MARC\500本MARC数据\*.iso
  2. copy %i% D:\成品测试\%~ni%\meta
  3. pause
复制代码

TOP

返回列表