我正在编写一个批处理文件,将文件从映射网络驱动器(Z:)复制到本地磁盘(C:)。
问题是,有时映射的网络驱动器采用字母 Z,有时采用字母 Y,或者任何其他字母(尽管它映射到同一个东西)。
我将如何在批处理文件中说从有效字母(网络驱动器)复制?截至目前,我的脚本如下:
copy Z:\*.log C:\Fiblogs
但有时映射的网络驱动器可能是 Y:\ 或 W:\ 等等。我该如何在脚本中解释这一点?
答案1
你不需要 - 情况很糟糕。如果这是映射驱动器,则应该集中控制和设置。例如,通过登录脚本。
如果您有大量文件,也许只使用 ONE 并使用 DFS 将文件夹层次结构映射到不同的位置。
但一般来说,当映射驱动器“移动”且人们拥有指向其他位置的链接等时,很多事情都会被破坏。
是的,理论上你可以找出映射驱动器指向的位置,然后基于此查找要使用的驱动器号 - 但这需要大量工作才能解决系统管理员无法提供稳定环境的问题。
答案2
批处理文件中的正确方法:
copy \\serverFQDN\share\*.log C:\Fiblogs
可以的方法:在批处理文件中添加/修改为:
net use Z: /del
net use z: \\server\share
copy Z:\*.log C:\Fiblogs
(如果你想了解技术,大多数人会使用robocopy
而不仅仅是copy
命令)