批处理文件XCOPY找不到现有目录


0

我正在编写一个小批处理文件来将我的C#项目复制到另一个驱动器。我正在使用 XCOPY 复制整个文件夹(我们还有一些XP机器,所以 robocopy 不是一种选择)。但是,当我运行批处理文件时,它告诉我它找不到指定的文件(为什么它要查找文件而不是文件夹我不知道)。

这是我的文件夹结构。我想要复制 folder 到了 program\dst 上的文件夹 O 驾驶。

src
-folder
-batchFile.bat

O
-program
--dst    

我的batchFile.bat包含以下行

XCOPY  ".\folder" "O:\program\dst" /E

当我运行它时,它说:

File Not Found - folder

即使它绝对存在(作为文件夹,而不是文件)。

Answers:


0

我尝试过这个,它对我有用。我猜你已经创建了批处理文件的快捷方式,并且启动目录不正确。如果是这样,添加一个 cd 命令以批处理文件的开头将目录更改为 src 应该修复它,或者使用绝对路径 folder 而不是相对的:

cd "C:\Whatever\src"
XCOPY ".\folder" "O:\program\dst" /E

要么

XCOPY "C:\Whatever\src\folder" "O:\program\dst" /E

没有捷径,我直接运行它,所以我不确定为什么相对路径不起作用(因为我最好使用相对路径来满足我的需求)
audiFanatic

@audiFanatic你用绝对路径试过吗?
Cocowalla

是的,它的确有效。但不幸的是,绝对不是满足我需求的最佳解决方案。
audiFanatic

@audiFanatic正在创建一个快捷方式,将'Start in'字段设置为'src'的绝对路径,这是一个可行的选项吗?
Cocowalla

好吧,问题是我试图通过共享驱动器在计算机之间移动这些文件,所以我不确定我是否可以使用绝对路径,因为我无法保证它是有效的。
audiFanatic
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.