1

我想编写一个脚本,在几个 Windows 服务器中找到一个名为“A”的特定文件夹,然后将一些文件复制到该文件夹​​中。

问题是服务器中有许多不同的共享驱动器,并且该文件夹可能在其中任何一个中。我最终得到了一个大的 for 循环和它下面的 if 语句数。想知道是否有任何简单的方法可以做到这一点。非常感激。

JS

这是我的脚本的一部分,仅包含两个共享驱动器:

@echo off
cd /d %~dp0
setlocal EnableDelayedExpansion


for /f %%A in (serverList.txt) DO (
if exist \\%%A\S$\A ( 
robocopy  sourcefolder \\%%A\S$\A /e
) else (
if exist \\%%A\e$\A (
robocopy  sourcefolder \\%%A\e$\A /e
) else (
echo %%A has incorrect folder >> errorlog.txt
)

)

endlocal
pause
4

1 回答 1

1

我想这是一个批处理(不是 bash),你会运行多次,所以如果你有一个带有服务器列表的 txt,你最好使用一个存在的共享列表,你可以调整这个脚本来生成这样一个列表。

如果这只是一个一次性的便利脚本,而您只是想知道是否可以做得更好,则可以跳过检查并执行 robocopy,如果目标文件夹不存在,它将失败。

于 2013-05-14T11:07:51.460 回答