使用batch file从远程Linux机器上运行自定义命令

我想使用batch file从我的Windows机器上运行远程Linux机器上的自定义命令。 自定义命令返回整数值,这将被batch file进一步使用。 我怎样才能做到这一点?

现在,我从batch file中调用winscp ,然后将winscp的输出写入远程文件,然后使用winscp get命令,我将该文件下载到我的Windows机器中。 之后,我正在从batch file中读取该文件。 好吧,但很长的过程。

我的目标是获得批处理脚本的命令输出,以便batch file中的值可以进一步使用。

另一种选择是plink.exe。 它是一个PuTTy的命令行版本,如果你安装了PuTTy,那么你已经有了plink(和PuTTy在同一个目录下)

从批处理,这将看起来像这样:

 %PATH_TO_FILE%\plink.exe -batch root@10.0.0.1 "remote command" SET RETVAL=%ERRORLEVEL% IF NOT ["%RETVAL"]==["0"] ( ECHO "Remote Command failed" ) ELSE ( ECHO "Command returned with exit code %RETVAL% ) 

您可以使用ssh在Linux机器上运行远程命令。 你可以从http://sshwindows.sourceforge.net/获得一个openssh的命令行窗口

然后,在您的批处理文件中,只需添加:

 ssh linuxserver command-name 

这将返回命令的输出

例如:

 ssh linuxserver uname 

输出:“Linux”

希望这可以帮助。