【发布时间】:2013-06-01 18:19:14
【问题描述】:
我需要每天从我有 SCP 但没有 SSH 访问权限的客户端下载文件。
文件名将始终为/outgoing/Extract/visit_[date]-[timestamp].dat.gz'
例如昨天的文件被称为visits_20130604-090003.dat.gz
我不能依赖时间戳总是相同的事实,但日期应该总是昨天的日期:
到目前为止我的设置:
我的主目录包含名为 downloads_fullname 和 downloads_wildcard 的子目录。
它还包含一个名为 foo.rb 的简单 ruby 脚本。
foo.rb的内容是这个`
#! /usr/bin/ruby
require 'net/ssh'
require 'net/scp'
yesterday = (Time.now - 86400).strftime('%Y%m%d')
Net::SCP.start('hostname', 'username') do |scp|
scp.download!('/outgoing/Extract/visits_' + yesterday + '-090003.dat.gz', 'downloads_fullname')
scp.download!('/outgoing/Extract/visits_' + yesterday + '-*.dat.gz', 'downloads_wildcard')
end
运行时downloads_fullname 目录包含文件,但downloads_wildcard 目录不包含。
有没有办法在 Net::SCP 中使用通配符?或者有人有任何狡猾的解决方法吗?我试过\*无济于事。
【问题讨论】: