2

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

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

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

4

2 回答 2

3

另一个选项是 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%
)
于 2012-10-31T15:52:57.553 回答
1

您可以使用 ssh 在 Linux 机器上运行远程命令。您可以从http://sshwindows.sourceforge.net/获取 openssh 的命令行 windows 端口

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

ssh linuxserver command-name

这将返回命令名的输出

例如:

ssh linuxserver uname

输出:“Linux”

希望这可以帮助。

于 2012-10-31T15:14:10.847 回答