使用Ruby远程操作本地文件?

时间:2009-11-06 08:23:27

标签: ruby command-line remote-access

我想通过在远程服务器上运行的简单Rails应用程序自动在笔记本电脑上创建符号链接。我需要能够从任何地方在笔记本电脑上运行内核任务。这甚至可以吗?

4 个答案:

答案 0 :(得分:2)

从远程获取脚本并执行

您的服务器可以创建一个Shell或Ruby脚本,目标是在您的笔记本电脑上执行。您的笔记本电脑现在需要定期检查此脚本并执行它。这样做的好处是:

  • 这不仅适用于您的笔记本电脑,也适用于检查脚本的任何其他计算机。
  • 除了http
  • 之外,您不需要任何其他传输
  • 服务器不需要事先知道客户端
  • 除了在客户端创建符号链接而不进行更改之外,这适用于任何其他任务。

客户端可以像以下一样简单:

wget -O - "url" | ruby -

wget -O - "url" | sh -

生成服务器上的符号链接列表

您的服务器可以创建所需符号链接的列表。在客户端计算机上,您需要一个定期解析此列表并创建符号链接的程序。优点是:

  • 您不需要信任服务器
  • 您的服务器无法偶然rm -rf /
  • 除了http
  • 之外,您不需要任何其他传输
  • 这不仅适用于您的笔记本电脑,也适用于检查列表的任何其他机器。

客户端可以像

一样简单
wget -O - "url" | ruby -r yaml -e "YAML.load(STDIN).each { |a, b| \`ln -s \"#{a}\" \"#{b}\" \` }"

答案 1 :(得分:1)

您可以使用Fuse挂载文件系统。在我看来,这是一个非常简洁的小东西。

Find Fuse here

编辑:将链接更改为指向FuseFs,它与Ruby绑定融合,如果您使用Ruby,这就是您需要的。

答案 2 :(得分:1)

你可以使用基于红宝石的木偶。

答案 3 :(得分:0)

如果它只是您的笔记本电脑而没有其他客户端,那么您可以将服务器ssh发送到您的笔记本电脑并做任何需要的事情。通常,不,HTTP服务器不可能在客户端计算机上执行任何操作。