Batch file 第一次排除后忽略XCOPY排除列表

Batch file 第一次排除后忽略XCOPY排除列表,batch-file,xcopy,Batch File,Xcopy,我创建了一个批处理文件,它使用xcopy复制一个目录和子目录,并将它们合并到一个文件中。(即,我所有的模块化开发css样式表合并到一个生产样式表中) 一切都很好,除了当我引用excludelist.txt时,它只排除第一行,而不是我想要排除的后续文件 有人想试试这个吗?你会很有帮助的 代码如下: XCOPY C:\xampp\htdocs\PROJECT\css\*.* C:\temp /S /I /Y /EXCLUDE:C:\xampp\htdocs\PROJECT\exclude.txt

我创建了一个批处理文件,它使用xcopy复制一个目录和子目录,并将它们合并到一个文件中。(即,我所有的模块化开发css样式表合并到一个生产样式表中)

一切都很好,除了当我引用excludelist.txt时,它只排除第一行,而不是我想要排除的后续文件

有人想试试这个吗?你会很有帮助的

代码如下:

XCOPY C:\xampp\htdocs\PROJECT\css\*.* C:\temp /S /I /Y /EXCLUDE:C:\xampp\htdocs\PROJECT\exclude.txt
…在我的exclude.txt中是

1.css
2.css
3.css
4.css
5.css


/////我知道代码可以工作(在某种程度上),因为它实际上不包括文件1.css——只是不包括它下面的文件。我将每个排除放在新行上对吗?

您似乎正确地使用了xcopy-每个排除文件(或根据通配符进行的匹配)都应该放在文件中的新行上。到目前为止,我无法重现你所经历的行为

上面给出的exclude.txt列表是测试文件,还是实际的css名称?
批处理文件应该复制的其他文件的名称是什么

编辑:
在一次匹配之后,xcopy无法排除更多的文件,这给了我最多的停顿。我认为这可能与排除文件中使用的回车类型有关,但xcopy可以很好地处理unix样式的回车


是否可以重新验证是否使用了正确的排除文件?

您似乎正确使用了xcopy-每个排除文件(或根据通配符进行的匹配)都应该位于文件中的新行上。到目前为止,我无法重现你所经历的行为

上面给出的exclude.txt列表是测试文件,还是实际的css名称?
批处理文件应该复制的其他文件的名称是什么

编辑:
在一次匹配之后,xcopy无法排除更多的文件,这给了我最多的停顿。我认为这可能与排除文件中使用的回车类型有关,但xcopy可以很好地处理unix样式的回车


能否重新验证是否使用了正确的排除文件?

简短回答:创建一个新的文本文件,键入条目并保存文件


更详细的解释是:我今天在Windows2008服务器上遇到了这个问题。我尝试了各种方法让它发挥作用。强制记事本将文件保存为ANSI、Unicode和UTF-8,但它们都有相同的问题。最后,我开始考虑我通过FTP将文件放在服务器上的事实,FTP很可能调整了文件格式。我在服务器上创建了一个新的文本文件,在新文件中键入了所有相同的条目,现在它可以工作了。

简短的回答:创建一个新的文本文件,键入条目并保存文件

更详细的解释是:我今天在Windows2008服务器上遇到了这个问题。我尝试了各种方法让它发挥作用。强制记事本将文件保存为ANSI、Unicode和UTF-8,但它们都有相同的问题。最后,我开始考虑我通过FTP将文件放在服务器上的事实,FTP很可能调整了文件格式。我在服务器上创建了一个新的文本文件,在新文件中键入了所有相同的条目,现在它可以工作了

xcopy "C:\users\dad\*.*" dad /s /d <yesnoyesno /EXCLUDE:excluexclu 1>cop.txt 2>err.txt
xcopy“C:\users\dad\*.*”dad/s/d cop.txt 2>err.txt
在web上的某个地方,我看到一条注释,大意是
/Y
开关不能直接用于排除文件

我想在这里指出的是有用的输出文件1和2,它们详细说明了成功和失败的问题

我的只显示成功。

我使用以下方法

xcopy "C:\users\dad\*.*" dad /s /d <yesnoyesno /EXCLUDE:excluexclu 1>cop.txt 2>err.txt
xcopy“C:\users\dad\*.*”dad/s/d cop.txt 2>err.txt
在web上的某个地方,我看到一条注释,大意是
/Y
开关不能直接用于排除文件

我想在这里指出的是有用的输出文件1和2,它们详细说明了成功和失败的问题


我的只有成功。

我也有类似的问题。我试图排除根文件夹和任何子文件夹中具有特定扩展名的所有文件,但没有成功。原因是我放了*.pdb而不是.pdb。新线/马车返回事件对我来说完全是个骗局

所以我的文件看起来就像:

.pdb B.obj .vb
.cs

我也有类似的问题。我试图排除根文件夹和任何子文件夹中具有特定扩展名的所有文件,但没有成功。原因是我放了*.pdb而不是.pdb。新线/马车返回事件对我来说完全是个骗局

所以我的文件看起来就像:

.pdb B.obj .vb
.cs

尝试在文本编辑器上强制使用ANSI编码保存。
我遇到了一个类似的问题,就是这样。

尝试在文本编辑器上强制使用ANSI编码保存它。
我遇到了一个类似的问题,就是这样。

嘿,Andy,1.css、2.css等只是用来说明问题的文件名。批处理要复制的文件的其他名称都是英文名称,没有空格,没有特殊字符(除了“-”(破折号)。希望你有更多的洞察力。我被难住了!你是不是用U+000A作为行分隔符,而不是U+000A U+000D?我只是按enter键得到一个新行。没什么奇怪的。嘿,安迪,1.css,2.css等只是用来说明问题的文件名。批处理应该复制的其他文件名都是英文名,没有空格,没有特殊字符(除了“-”(破折号)。希望你有更多的洞察力。我被难住了!你是不是用U+000A作为行分隔符,而不是U+000A U+000D?我只是按enter键得到一个新行。没什么奇怪的。你最终有什么进展吗?我设法让它做我想做的事,尽管不是使用排除列表。我复制了acros