我有一个包含文件和文件夹列表的文本文件.我想要做的是使用xcopy来复制文本文件中写的内容.我的文本文件如下所示:
"C:\FOLDER"
"C:\FOLDER\FILE1.TXT"
"C:\FOLDER\FILE2.TXT"
"C:\FOLDER\FOLDER2"
"C:\FOLDER\FOLDER2\FILE3.TXT"
Run Code Online (Sandbox Code Playgroud)
对于给定的输出目录,"C:\OUTPUT"我想复制整个结构,所以:
"C:\OUTPUT\FOLDER"
"C:\OUTPUT\FOLDER\FILE1.TXT"
"C:\OUTPUT\FOLDER\FILE2.TXT"
"C:\OUTPUT\FOLDER\FOLDER2"
"C:\OUTPUT\FOLDER\FOLDER2\FILE3.TXT"
Run Code Online (Sandbox Code Playgroud)
我怎么能做到这一点?到目前为止,我已经写了一个for循环,读取文件的每一行,但如果该行是一个文件夹,它会复制所有文件.我想要做的只是复制和创建文本文件中提到的文件和文件夹.
@echo off
for /f "delims=] tokens=1*" %%a in (textfile.txt) do (
XCOPY /S /E %%a "C:\OUTPUT"
)
Run Code Online (Sandbox Code Playgroud)
我是在正确的轨道上吗?
感谢你并致以真诚的问候,
安德鲁
在我的批处理文件中,我有一个包含文件路径的变量:
SET VAR1=C:\Folder1\Folder2\File.txt
Run Code Online (Sandbox Code Playgroud)
我想提取目录结构和retreive:
C:\Folder1\Folder2\
Run Code Online (Sandbox Code Playgroud)
我已阅读线程像这样,我需要用%~dp0在那里0,我相信作为一个参数传递.我试过了,%~dpVAR1但那不起作用.如何获取我正在寻找的输出,但是包含文件路径的变量?
另外,为了使事情变得困难,我必须在一个IF条件下执行所有这一切,这意味着一旦变量被声明,我将需要引用它!而不是%(我已经setlocal enableextensions enabledelayedexpansion在我的脚本开头声明允许这个).
任何帮助深表感谢!
谢谢!
安德鲁
如果我有两个变量,string并且index,我想从索引中提取一个子字符串,我可以使用该SET命令来执行此操作吗?例如:
@ECHO off
SET string=Hello
SET index=3
ECHO %string:~%index%%
Run Code Online (Sandbox Code Playgroud)
Helloindex%当预期结果为时,返回lo.我正在尝试做什么?
问候,
安德鲁