对游戏相当陌生,花了很多时间寻找帮助和示例。尽管我想通过使用单个输入文件“computer_listc.txt”来简化该过程,但我已经有了这个工作的一个版本。我基本上想读取一系列文件夹路径(来自computer_listc.txt),并使用部分路径来编写进一步的cmd表达式。
我的问题是 fname 和 comp_id 设置不正确。我想让它们等于 T(文件名),然后编辑它们。
fname 需要是删除前 12 个字符的文件路径。虽然 comp_id 需要等于文件路径中指定的计算机名,例如
fname = c_modelling\model\slave1
comp_id = VOSTRO460-1
这是脚本。你能看到我的错误吗?
for /f "usebackq tokens=*" %%T in ("C:\c_modelling\Model\cal21_cal\Computer_ListC.TXT") do (
set fname = %%T
ren fname "%fname%" "C:\%fname%:~12%"
set comp_id = %%T
%comp_id% = %{comp_id:0:12}
mkdir %%T > NUL 2>&1
echo cd %fname% >\\%%T\beo_insC.cmd
echo beo >>\\%%T\beo_insC.cmd
robocopy c:\c_modelling\model\cal21_cal \\%%T\ /s /e
start cmd.exe /c psexec \\%comp_id% -c c:\c_modelling\model\cal21_cal\beo_insC.cmd
del \\%%T\beo_insC.cmd
)
Computer_ListC.txt 包含以下文件名: 这最终将有一个很长的计算机文件夹路径列表。
VOSTRO460-1\c_modelling\model\slave1
VOSTRO460-1\c_modelling\model\slave2
我正在创建一个与“psexec”一起使用的 *.cmd 文件,因为当我将进程定向到本地计算机时,路径默认为 \system32。
任何帮助都会非常有帮助!!