我想使用批处理文件从我的 Windows 机器上在远程 Linux 机器上运行自定义命令。自定义命令返回整数值,批处理文件将进一步使用。我怎样才能做到这一点?
现在,我正在winscp
从批处理文件调用并将命令的输出winscp
远程写入文件,然后使用get
命令winscp
,我正在将该文件下载到我的 Windows 机器中。之后,我从批处理文件中读取该文件。好的,但是过程很长。
我的目标是获得可用于批处理脚本的命令输出,以便可以在批处理文件中进一步使用该值。
我想使用批处理文件从我的 Windows 机器上在远程 Linux 机器上运行自定义命令。自定义命令返回整数值,批处理文件将进一步使用。我怎样才能做到这一点?
现在,我正在winscp
从批处理文件调用并将命令的输出winscp
远程写入文件,然后使用get
命令winscp
,我正在将该文件下载到我的 Windows 机器中。之后,我从批处理文件中读取该文件。好的,但是过程很长。
我的目标是获得可用于批处理脚本的命令输出,以便可以在批处理文件中进一步使用该值。
另一个选项是 plink.exe。它是 PuTTy 的命令行版本,如果您安装了 PuTTy,那么您已经有了 plink(与 PuTTy 在同一目录中)
从 Batch 来看,这看起来像这样:
%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 的命令行 windows 端口
然后,在您的批处理文件中,您只需添加:
ssh linuxserver command-name
这将返回命令名的输出
例如:
ssh linuxserver uname
输出:“Linux”
希望这可以帮助。