【发布时间】:2014-02-02 07:08:28
【问题描述】:
背景:
我是批处理文件 IO 的新手,需要帮助解决以下问题
我有一个源文件applaunch.bat,内容如下
start /B /D "\\MainServTST01.XYZ.ORG\BuildQA\BuildTEST\1.33.4.2\Application\Client2" Client.lTracking.exe
我有另一个批处理文件buildcopy.bat,我用它来将构建从网络路径复制到本地磁盘上的另一个路径,它的内容是这样的
REM
robocopy \\MainServTST01.XYZ.ORG\BuildQA\BuildTEST\1.33.4.2\Application\Client2 D:\BuildInstance\QA_Copy /s /e /zb
pause
问题:
在buildcopy.bat我目前正在手动更新源路径,即
\\MainServTST01.XYZ.ORG\BuildQA\BuildTEST\1.33.4.2\Application\Client2
我想在读取源路径的“buildcopy.bat”中编写批处理脚本,即
\\MainServTST01.XYZ.ORG\BuildQA\BuildTEST\1.33.4.2\Application\Client2
来自applaunch.bat 并更新它为buildcopy.bat 中robocpy 命令的源路径
提前致谢。
【问题讨论】:
-
buildcopy.bat显示的是整个批处理文件吗?它可以很简单地完成并用所需的信息完全替换buildcopy.bat。 -
buildcopy.bat 是我想要编写脚本以从变量中的 applaunch.bat 读取网络路径然后将其用作我的 robocopy 命令的源的文件。顺便说一句,我通过谷歌搜索得到了解决方案,我很快就会在这里发布。
-
因为我是新用户,网站不允许我回答我自己的问题 :)
-
从谷歌搜索得到了解决方案,这篇文章帮助了很多 superuser.com/questions/514284/… 这是关于如何在 FOR 中使用引号作为分隔符解决我的问题:在 buildcopy.bat 中我必须这样写 FOR /F tokens^=2^ delims^=^" %%i IN (applaunch.bat) DO (set buildpath=%%i) robocopy %buildpath% D:\BuildInstance\QA_Copy /s /e /zb
标签: batch-file batch-processing