Board logo

标题: [其他] 【已结】批处理如何从文本中获取路径进行文件复制 [打印本页]

作者: zsdhzzg    时间: 2009-3-2 17:18     标题: 【已结】批处理如何从文本中获取路径进行文件复制

本帖最后由 pcl_test 于 2016-8-1 16:28 编辑

求助高手,如何用Config.ini来配合决定批处理的路径
-----------------------------------------------------
@echo off
xcopy /s /e /d /y   \\win2k\abc D:\abc
------------------------------------------------------

请问高手,我有一个如上的批处理,我如何再建一个Config.ini文件,用这个Config.ini文件来决定复制的本地路径

就是说怎么才能实现用设置Config.ini这个文件,来改变D:\ABC这个路径

或者说用设置Config.ini这个文件,来改变\\win2k\abc D:\abc,这两个路径

请高手们,帮帮我这个菜鸟

[ 本帖最后由 zsdhzzg 于 2009-3-5 13:57 编辑 ]
作者: Batcher    时间: 2009-3-2 17:20

是否介意把所有的感叹号都删掉?
作者: zsdhzzg    时间: 2009-3-3 08:05

原帖由 Batcher 于 2009-3-2 17:20 发表
是否介意把所有的感叹号都删掉?


不介意.
作者: Batcher    时间: 2009-3-3 09:33     标题: 回复 3楼 的帖子

是否介意你自己亲自动手把帖子标题和帖子内容中所有的感叹号都删掉?
作者: zsdhzzg    时间: 2009-3-3 14:12

原帖由 Batcher 于 2009-3-3 09:33 发表
是否介意你自己亲自动手把帖子标题和帖子内容中所有的感叹号都删掉?



OK.  呵呵 从此以后我不敢用感叹号了.
作者: Batcher    时间: 2009-3-3 14:24

Config.ini
  1. C:\test
复制代码
a.bat
  1. @echo off
  2. set /p ConfDir=<"Config.ini"
  3. xcopy /s /e /d /y "\\win2k\abc" "%ConfDir%"
复制代码

作者: Batcher    时间: 2009-3-3 15:43

Config.ini
|\\win2k\abc|C:\test|


a.bat
  1. @echo off
  2. for /f "tokens=1-2 delims=^|" %%a in (Config.ini) do (
  3.   set "ConfSrcDir=%%a"
  4.   set "ConfDstDir=%%b"
  5.   goto :CopyFiles
  6. )
  7. :CopyFiles
  8. xcopy /s /e /d /y "%ConfSrcDir%" "%ConfDstDir%"
复制代码

作者: zsdhzzg    时间: 2009-3-4 08:10

原帖由 Batcher 于 2009-3-3 15:43 发表
Config.ini


a.bat@echo off
for /f "tokens=1-2 delims=^|" %%a in (Config.ini) do (
  set "ConfSrcDir=%%a"
  set "ConfDstDir=%%b"
  goto :CopyFiles
)
:CopyFiles
xcopy /s /e /d /y "%ConfSrcDir ...



谢谢,巡查指导.要是想 XCOPY 多对路径,我应该怎么样去实现!

打个比方
—————————————————————————————————————
@echo off

xcopy /s /e /d /y   \\win2k\abc  D:\abc

xcopy /s /e /d /y   \\win2003\AAA  D:\AAA

xcopy /s /e /d /y   \\win2003\BBB  D:\BBB
—————————————————————————————————————
作者: zsdhzzg    时间: 2009-3-5 08:11

谢谢! 巡查再帮我指导一下,好吗?
作者: Batcher    时间: 2009-3-5 12:24     标题: 回复 8楼 的帖子

本版规则
1、求代码、寻求代码解释、探讨代码得失的帖子均可发在本版块,其余话题禁止在本版讨论;
2、求助时,务必在顶楼一次性把问题交代清楚;若文字难以表述,请配图说明,或是上传附件;但是,一切操作应从节约论坛资源的角度出发,能文字说明清楚的就无需再发图片,小图能说明问题的尽量不截全图,在不影响效果的前提下尽量压缩图片及附件;
3、所发代码若不止一行,请务必用code标记把代码部分首尾括起来,以便他人复制;


Q: 如何用code把代码扩起来?
A: http://bbs.bathome.net/thread-404-1-1.html
作者: Batcher    时间: 2009-3-5 12:25

Config.ini
  1. |\\win2k\abc|D:\abc|
  2. |\\win2003\AAA|D:\AAA|
  3. |\\win2003\BBB|D:\BBB|
复制代码
test.bat
  1. @echo off
  2. for /f "tokens=1-2 delims=^|" %%a in (Config.ini) do (
  3.   if "%%a" neq "" (
  4.     if "%%b" neq "" (
  5.       xcopy /s /e /d /y "%%a" "%%b"
  6.     )
  7.   )
  8. )
复制代码

作者: zsdhzzg    时间: 2009-3-5 15:54

谢谢. 真诚的感谢巡查:Batcher.
不用感叹号.呵呵.




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2