如何在UNIX中使用FTP在另一台服务器上执行脚本?如何传递变量呢?

时间:2016-05-26 13:02:59

标签: bash shell variables unix ftp

考虑我有两台服务器A和B. 在服务器B上,我有一个脚本test.sh

我想使用它们之间的FTP连接从服务器A执行此test.sh,并且我想将变量传递给B的脚本,但变量在A处定义。

OR

如果我从A连接到服务器B, 在ssh命令之后,我将在B执行shell脚本。 但是,如果我想添加一个变量(我在A时已定义) 作为B.脚本的论据,我该怎么做?有什么建议吗?

请建议。

提前致谢。

2 个答案:

答案 0 :(得分:0)

一些,但不是很多,FTP服务器支持SITE EXEC command

在公共* nix ftp客户端中,您可以使用quote命令执行SITE FTP命令:

quote SITE EXEC test.sh param1 param2

但这可能不适用于您的服务器。在大多数情况下,您无法通过FTP执行shell命令。

虽然您有SSH / shell访问权限,但请使用ssh执行脚本。

答案 1 :(得分:0)

在没有看到你的代码很难看到你正在尝试做什么的情况下,如果你使用双引号,你的变量应该在将它的值发送到远程主机之前进行插值,例如:

ssh user@127.0.0.1 "~/bin/script.sh $Local_Variable"