繁体   English   中英

Robocopy(或xcopy)从文件中读取?

[英]Robocopy (or xcopy) read from file?

所以我有一些excel表格,其中包含均来自单个根目录的目录。 无论如何,是否有robocopy(或类似程序)读取excel工作表作为输入仅复制所选文件?

这是电子表格的格式:

NMMC c6 31b5ac6c-1377-4a86-90a0-73c6335907e3.IMG
NMMC 2e 1da3d2ec-526f-479a-9c09-90cb2cfad0b6.IMG
NMMC 8a f77168ad-2f35-490c-a2a8-25e9fa4ac0ea.IMG
NMMC 2f fc2162f8-7548-4921-b722-5899cbe54641.IMG
NMMC fc 1fe09fcd-3861-4de8-8bfd-4510ffa8f29c.IMG
hcri001 1b  243161b4-eef0-4d5c-9e42-dcea6772afdd.IMG
hcri001 a7  7e60ba72-fb8f-4d65-ae34-92b034c10e2e.IMG
hcri001 84  7934584f-7bc8-4450-bf6d-da58ac2ebb1a.IMG
hcri001 1a  cda461ab-fe9d-4b4f-87bf-43dab9dd8644.IMG
hcri001 2b  4f2c02b6-31c6-4d8b-975e-591778bcdfef.IMG
ICPS    8a  2aca38a8-4133-4972-a03f-8c3c15654df3.IMG
ICPS    89  8338f897-76c0-4f6f-9ae5-3b4c7e8a302c.IMG
ICPS    30  d9dba300-6c14-4484-a147-bccb9dd15aa3.IMG

我想将这些文件复制到具有相同结构的另一个文件系统中(例如,如果图像来自C:\\Apps\\Test\\Site\\NMMC\\c6\\31b5ac6c-1377-4a86-90a0-73c6335907e3.IMG那么我需要将其复制到Z:\\Apps\\FileSystem\\NMMC\\c6\\31b5ac6c-1377-4a86-90a0-73c6335907e3.IMG

这可能吗?

谢谢

编辑以消除混乱

如果要避免编写Office Interop代码,我的建议是执行以下操作:

首先,在Excel中,将数据作为CSV文件保存到路径c:\\ temp \\ foo.csv。 这将创建一个如下所示的数据文件:

NMMC,2e,1da3d2ec-526f-479a-9c09-90cb2cfad0b6.IMG
NMMC,8a,f77168ad-2f35-490c-a2a8-25e9fa4ac0ea.IMG
NMMC,2f,fc2162f8-7548-4921-b722-5899cbe54641.IMG
NMMC,fc,1fe09fcd-3861-4de8-8bfd-4510ffa8f29c.IMG

接下来,打开命令提示符并编写以下命令:

for /f "delims=, tokens=3" %i in ( c:\temp\foo.csv ) do echo %i

这将输出所有文件名(以及仅文件名)。 一旦感到满意,它将可以将“ echo%i”更改为所需的xcopy命令。

使用文本编辑器创建批处理文件或Shell脚本。 例如,您可以查找/替换,以便bat文件包含以下内容:

copy c:\31b5ac6c-1377-4a86-90a0-73c6335907e3.IMG
copy c:\1da3d2ec-526f-479a-9c09-90cb2cfad0b6.IMG
copy c:\f77168ad-2f35-490c-a2a8-25e9fa4ac0ea.IMG
copy c:\fc2162f8-7548-4921-b722-5899cbe54641.IMG
copy c:\1fe09fcd-3861-4de8-8bfd-4510ffa8f29c.IMG

您可以尝试使用PowerShell的COM Automation读取Excel文件,并将这些行输入到copy,xcopy或robocopy中。

我无法举一个实际的例子,我的powershell-fu不够强大。 Google可能是您的朋友。

好吧,我想我已经拥有了。 这是我正在运行的命令提示符脚本:

for /f "delims=, tokens=1,2,3" %i in ( D:\foo.csv ) do xcopy /i /y "Z:\%i\%j\%k" "D:\%i\%j\%k"

这正是我想要的,但是对于尝试复制的每个文件,都会出现一个提示,询问我是文件还是目录。 无论如何,有没有告诉xcopy它们是所有文件? 我以为/ i就是这样做的,但这似乎并没有抑制提示。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM