还是批处理

来源:百度知道 编辑:UC知道 时间:2024/05/05 01:31:33
有两个文档a.txt内容如下
f:\111\abc\xa\a\a1.txt
f:\111\abc\xfh\a\a2.txt
f:\111\abc\xggh\a\a2.txt
f:\111\abc\xfhg\a\ahj.txt
b.txt内容如下
f:\111\abc\xa
f:\111\abc\xfh
f:\111\abc\xggh
f:\111\abc\xfhg
注:两个文档内容有相似之处,就是b的内容比a的内容少了a\*.txt
目的:
将a.txt的第一行(其实是一个文档的路径)复制到b.txt的第一行,第二行复制到第二行,依次类推..........
请指教!!!
不好意思,可能是我没说清楚,
a.txt第一行的内容是f:\111\abc\xa\a\a1.txt
b.txt第一行的内容是f:\111\abc\xa
我的意思是,把f盘111文件夹下的abc文件夹下的xa文件夹下的a文件夹下的a1.txt文档复制到f盘111文件夹下的abc文件夹下的xa文件夹下.
也就是说a文档的每一行的内容都是一个文档的路径,
b文档的每一行的内容都是一个目的路径.
举例说吧:假设a.txt的第一行等于aaa第二行等于bbb,第三行等于ccc 依次类推
b.txt的第一行等于sss 第二行等于hhh第三行等于yyy.........依次类推
我的目的:copy aaa sss (其实就是copy f:\111\abc\xa\a\a1.txt f:\111\abc\xa)
copy bbb hhh (其实就是copy f:\111\a

不是我写的,COPY过来滴。。。

@echo off
setlocal enabledelayedexpansion
set skip=0
for /f %%i in (a.txt) do (
set src=%%i
if !skip!==0 (set /p dst=<b.txt) else (call :dst !skip!)
set /a skip+=1
if defined dst echo xcopy "!src!" "!dst!"
set src=
set dst=
)
pause>nul
GOTO :EOF

:dst
for /f "skip=%1" %%i in (b.txt) do (set dst=%%i&GOTO :EOF)

你这个是什么意思?没看懂,请你说明白点一下!