我有这个代码:
xcopy c:\files1\test1 c:\files2\test2
如果我不知道第一个位置,该怎么办? -xcopy c:\***\test1 c:\files2\test2
如何在代码中定义第一个位置?
答案1
如果您知道文件的名称,则可以在父位置(第一个位置)中搜索该文件,然后获取其位置,然后将其复制到另一个驱动器。要获取文件的位置,您可以通过以下方式从 CMD 搜索它
dir filename.ext /s /p (如果你不知道文件名,那么你可以通过以下方式搜索.ext 如果你不知道它是 ext,那么你可以通过文件名搜索它。此外,如果它是一个文件夹,那么您不需要 .ext,只需要文件名)。
您不需要任何有关变量% cd 的信息。您需要的是在 for 循环中运行命令并为每个循环执行复制命令。为此,您可以创建一个批处理文件,如下所示:-
或者
正如您所说的“.bat 文件位于要复制文件的文件夹中”,您需要使用 cd\(cd/ 两种方式都可以)命令转到父驱动器并使用我上面提供的通配符搜索文件,然后如果搜索成功,它将逐个将该文件复制到指定的文件夹中。此外,还有一个缺点,即批处理文件需要位于您需要在其中搜索文件的驱动器中,尽管复制位置可以位于任何驱动器上,只要它在线即可。例如,如果您的批处理文件位于 D 驱动器中,则只能在 D 驱动器上使用此方法,而不能在 C 驱动器上使用此方法,因为命令提示符在单个驱动器上运行。