批处理文件 - 访问联网计算机后继续执行命令



我需要全年更改多台计算机上的网关地址,我想创建一个批处理文件,这将使我的生活更加轻松。我遇到的问题是,一旦批处理文件连接另一台计算机,它就不再继续运行我编码的批处理,直到我"退出"他们的计算机然后它运行。

设置/p ComName= 输入计算机名称:

光盘 \diag

psexec \%ComName% cmd.exe

netsh 接口 IP 设置地址名称="本地连接"网关=192.X.X.XXX gwmetric=0

ipconfig

运行"psexec %ComName% cmd.exe"后,我需要什么才能允许我的批处理文件的其余部分在另一台计算机上运行?

您可以通过几种不同的方式执行此操作。

选项 1 - 一个批处理文件

SET /P ComName=Input Computer Name:
CD diag
PSEXEC \%ComName% netsh interface ...<your parameters>...
PSEXEC \%ComName% ipconfig


选项 2 - 两个批处理文件

第一.cmd

@ECHO OFF
SET /P ComName=Input Computer Name:
CD diag
PSEXEC \%ComName% -c Second.cmd

请注意 -c 参数。它告诉PSEXEC首先将要运行的文件复制到远程计算机。

第二.cmd

@ECHO OFF
netsh interface ...<your parameters>...
ipconfig

使用 /C 选项将命令作为参数传递给cmd并显式调用exit

psexec \%ComName% cmd /C "( netsh interface ip set address name="local area connection" gateway=192.X.X.XXX gwmetric=0 && ipconfig ) & exit"

最新更新