File 初学者问题(格式化,“此时文件路径意外”)
我是批处理文件的新手,我只需要做一件非常简单的事情。 我想要一个批处理文件来获取一个文本文件,它是一个文件路径列表-- Filelist.txt 开始文件>> O:\X\Y\Z\Board BOM Rev 4.xls>>文件 O:\X\Y\U>>整个文件路径 <结束文件 然后将文件(不是文件名,请澄清)复制到给定位置。 假设批处理文件位于O:\X\Y\Z中(文本文件也是如此),我想将所有这些文件复制到该文件夹中。我已尝试使用此代码 @回音 set input=“O:\X\Y\Z\Filelist.txt” 设置目标=%cd% 对于“输入”中的/f%%i,请执行xcopy“%%i”%dest%\/S 去做我需要做的,但是我得到了前面提到的错误。我在批处理文件方面做得很少,因此,如果您能提供更正和解释,我将不胜感激!File 初学者问题(格式化,“此时文件路径意外”),file,batch-file,File,Batch File,我是批处理文件的新手,我只需要做一件非常简单的事情。 我想要一个批处理文件来获取一个文本文件,它是一个文件路径列表-- Filelist.txt 开始文件>> O:\X\Y\Z\Board BOM Rev 4.xls>>文件 O:\X\Y\U>>整个文件路径
谢谢 首先,要使用变量“input”,请编写
%input%
第二,要获得的正确格式,您必须在其周围放置一些偏执的论点:
for /f %%i in ("%input%") do xcopy "%%i" %dest%\ /S
第一。(输入)
在第一个集合中
的值被双引号引错,该格式适用于特殊情况,而不是这次
第二。(目的地)
您需要确保对每个“variable=value”
双引号(至少当它们是字符串变量且can包含空格时)
但无论如何,您可以稍微简化代码,使其不依赖于dest
变量
三,。(适用于)
for
中的dest
变量也有同样的引号问题,而且您输入的输入变量也不正确,可以通过使用agroupation操作符()
来改进for
的语法,以防止将来出现错误
代码如下:
@echo off
set "input=O:\X\Y\Z\Filelist.txt"
REM set "dest=%cd%"
for /f "Usebackq Delims=" %%i in ("%input%") do (
xcopy "%%i" ".\" /S
)
请原谅我的英语