Transfer von Dateien mit SFTP und entweder mit PHP oder shell - /terminal-Skript

Brauche ich, um ein Skript zu schreiben, welches als cron-job jede Nacht, die transfers, einige berichten von Dateien per sftp auf einen anderen server.

Die report-Dateien werden erstellt, jede Nacht mit einem anderen cron-im format " support_[date].csv' & 'download_[Datum].csv'.

Frage ich mich, ob Ihr irgendwelche Hinweise, wie das folgende zu tun:

  1. Finden Sie die 2 Dateien erstellt spätestens [Datum]
  2. Kopieren Sie diese Dateien auf einem anderen server mit SFTP

Ich habe versucht, mehrere PHP-Skripte unter Verwendung der ssh2 extension, aber ohne Erfolg. Gibt es einen Weg, es zu tun mit einem shell-Skript aus? Es ist nicht etwas, was ich bin äußerst vertraut mit, um ehrlich zu sein (damit man auf der PHP-route zunächst)

Dies war eines meiner PHP-Skripte, die hat nicht funktioniert:

$src = 'test.csv';

$filename = 'test.csv';
$dest = '/destination_directory_on_server/'.$filename;

$connection = ssh2_connect('example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

//Create SFTP session
$sftp = ssh2_sftp($connection);

$sftpStream = fopen('ssh2.sftp://'.$sftp.$dest, 'w');

try {

            if (!$sftpStream) {
                throw new Exception("Could not open remote file: $dest<br>");
            }

            $data_to_send = file_get_contents($src);

            if ($data_to_send === false) {
                throw new Exception("Could not open local file: $src.<br>");
            }

            if (fwrite($sftpStream, $data_to_send) === false) {
                throw new Exception("Could not send data from file: $src.<br>");
            } else {
                //Upload was successful, post-upload actions go here...
            }

            fclose($sftpStream);

        } catch (Exception $e) {

            //error_log('Exception: ' . $e->getMessage());
           echo 'Exception: ' . $e->getMessage();
            if($sftpStream) {fclose($sftpStream);}

        }

Diese waren die Fehlermeldungen, die ich erhielt:

Warnung: fopen() [function.fopen]: URL
file-access is disabled in the server
Konfiguration in
/path_to_script/sftp-test.php auf der Linie
17

Warning: fopen(ssh2.sftp://Ressourcen-id

3/destination_directory_on_server/test.csv)

[function.fopen]: failed to open
stream: no suitable wrapper könnte
finden Sie in /path_to_script/sftp-test.php
in Zeile 17 Ausnahme: Konnte nicht geöffnet werden
remote-Datei:
/destination_directory_on_server/test.csv -

InformationsquelleAutor WastedSpace | 2010-02-23

Schreibe einen Kommentar