我需要每天從客戶端下載文件,我有SCP但不是SSH訪問。Ruby NET ::包含通配符的SCP
文件名總是會/outgoing/Extract/visit_[date]-[timestamp].dat.gz'
例如昨天的文件名爲visits_20130604-090003.dat.gz
我不能依賴於一個事實,即時間戳將永遠是相同的,但日期應該永遠是昨天日期:
我成立至今:
我的home目錄包含名爲downloads_fullname
和downloads_wildcard
子目錄。
它還包含一個名爲foo.rb
的簡單ruby腳本。
foo.rb的內容this`
#! /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中使用通配符?還是有人有任何狡猾的解決方法?我試過\*
無濟於事。