如何使用Ruby列出远程网站的目录

时间:2013-09-10 18:27:44

标签: ruby security rubygems filesystems

我在远程网站上使用Dir.glob()时遇到了一些困难。 Dir.glob()只能在本地目录中使用吗?

是否有另一种使用Ruby / Rubygems在外部Web服务器上列出远程目录/文件的方法?

2 个答案:

答案 0 :(得分:2)

Dir.glob仅适用于本地文件系统或已安装的文件系统。

Net::SSH gem可以帮助您连接到远程服务器并执行一个命令,该命令将列出目录,并将响应从远程服务器传输给您。更多信息请访问:https://stackoverflow.com/a/8732174/445131

答案 1 :(得分:1)

由于您具有对服务器的SSH访问权限,因此您可以在Ruby中自动执行该操作:

require 'net/ssh'
ssh = Net::SSH.start( 'host', 'user' )
files = ssh.exec!( 'ls /upload/media' ).split( "\n" )
ssh.close()