Ich brauche eine Datei täglich von einem Client, den ich habe SCP aber nicht SSH Zugriff auf.Ruby NET :: SCP enthält Wildcard
Der Dateiname wird immer /outgoing/Extract/visit_[date]-[timestamp].dat.gz'
sein
Zum Beispiel yesterdays Datei visits_20130604-090003.dat.gz
genannt wurde ich nicht darauf verlassen kann, dass der Zeitstempel immer das gleiche sein wird, aber soll das Datum immer yesterdays seinem Datum:
Mein aufgebaut bisher:
My Home-Verzeichnis Unterverzeichnisse enthält downloads_fullname
und downloads_wildcard
benannt.
Es enthält auch ein einfaches Ruby-Skript mit dem Namen foo.rb
.
Der Inhalt foo.rb sind 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
das downloads_fullname
Verzeichnis enthält die Datei Sobald er ausgeführt wird, aber das downloads_wildcard
Verzeichnis nicht.
Gibt es eine Möglichkeit, Platzhalterzeichen in Net :: SCP zu verwenden? Oder hat jemand schlaue Umwege? Ich versuchte \*
ohne Erfolg.