bnfk859-forum
Goto Top

Script SFTP Dateien kopieren

Hallo zusammen, ich hoffe ich drücke mich klar und verständlich aus und bekomme hier Hilfe bei meinem Problem:

Ich soll von Fremd SFTP Server jeden Morgen eine Datei abholen und auf unseren SFTP kopieren. Dann soll die Datei von der gleichen Quelle aus einmal als Backup auf einen Fileserver kopiert werden
und wenn dies erfolgreich war gelöscht werden.
Ich habe WINSCP und IPSwitch als Client zur Verfügung stehen. Über Ipswitch hatte ich das Ganze bereits über Tasks eingestellt aber diese laufen nur dann auf dem Windows Server wenn der User angemeldet ist das diese über die GUI und nicht über Script ausgeführt werden. Ich habe leider keinerlei Erfahrung mit Scirpten und SFPT befehlen bzw. FTP und hoffe daher hier Hilfe zu erhalten. Eine Anpassung oder Veränderung vorzunehmen sehe ich mich im Stande aber mir fehlt halte der Grundstein.

Die Login Daten können ruhig im Script stehen da der Server nur in meinem Zugriff ist auf dem das Script ausgeführt werden soll.

Ich hoffe auf Hilfe

Content-Key: 306334

Url: https://administrator.de/contentid/306334

Printed on: April 25, 2024 at 04:04 o'clock

Member: Kraemer
Kraemer Jun 06, 2016 at 06:08:03 (UTC)
Goto Top
Moin,

dann nutzte doch einfach WinSCP. Das erste Beispiel hier macht fast exakt das, was du erreichen willst.

Gruß Krämer
Member: bnfk859-forum
bnfk859-forum Jun 06, 2016 at 06:21:12 (UTC)
Goto Top
Hallo Kraemer,

leider kann ich das script nicht selber bauen und so wie ich das verstehe ist im Martin@example nur das laden der Files gezeigt aber nicht das kopieren aufs Ziel und dann nach erfolgreicher Prüfung des Vorgangs die Löschung an der Quelle.
Member: Kraemer
Kraemer Jun 06, 2016 updated at 06:38:21 (UTC)
Goto Top
In the example below, WinSCP connects to example.com server with account user, downloads file and closes the session. Then it connects to the same server with the account user2 and uploads the file back.
Lädt herunter - speichert also lokal (es spricht nichts dagegen, diese Datei direkt auf einem Fileserver abzulegen) - und lädt wieder hoch

Eine Anpassung oder Veränderung vorzunehmen sehe ich mich im Stande aber mir fehlt halte der Grundstein.
Wenn das stimmen würde, hättest du jetzt schon 1/3 deiner Problemstellung.. Fehlt noch das löschen der Datei - steht auf der selben Seite, die ich gelinkt habe - also 2/3 fertig. Fehlt jetzt noch das prüfen auf erfolg. Das müsste man sich dann noch ansehen, wenn der Rest funktioniert.

Gruß

PS: Wenn du den die Anpassung nicht hinbekommst und hier nicht einmal im Ansatz zeigst, das du das selber machen willst, dann wende dich doch bitten an @colinardo - der macht sowas gerne als Auftragsarbeit
Mitglied: 129413
129413 Jun 06, 2016 updated at 07:28:49 (UTC)
Goto Top
Member: bnfk859-forum
bnfk859-forum Jun 07, 2016 at 12:09:48 (UTC)
Goto Top
Hi, habe das soweit am laufen aber nun kommt hinzu, das die Datei die zuvor lokal gespeichert wird und dann auch auf einen anderen SFTP hochgeladen wird läuft. Die Datei muss aber von lokal nicht nur auf dem einen Server in ein Verzeichnis kopiert werden sondern in zwei unterschiedliche habe das mal so versucht:

  1. Upload the file to current working directory
put c:\XML\*.* /TM/TM_1/
put c:\XML\*.* /TM/TM_2/
  1. Disconnect
close
  1. Exit WinSCP
exit

Dann kommt das File in TM_1 an aber in TM_2 wird es nicht kopiert, vielleicht kann mir hier jemand einen Ansatz liefern wie ich es hin bekommen im Zeilsystem in zwei verschiedenen Verzeichnissen die gleich Datei abzulegen?
Mitglied: 129413
129413 Jun 07, 2016 updated at 12:21:46 (UTC)
Goto Top
  • Keine Berechtigungen ?
  • Fehlermeldungen ?
Lesen: http://winscp.net/eng/docs/scriptcommand_put
Member: bnfk859-forum
bnfk859-forum Jun 07, 2016 at 12:38:37 (UTC)
Goto Top
Hi wenn ich nur das TM_2 nehmen funktioniert es
Mitglied: 129413
Solution 129413 Jun 07, 2016, updated at Jun 08, 2016 at 08:20:24 (UTC)
Goto Top
Dann hast du einen Fehler in deinem Skript, poste bitte dein Komplettes Skript inkl. Befehlszeile und Parameter, aber bitte in Code-Tags

Die Kommentare hast du aber nicht wirklich so ins Skript geschrieben ??

"Funktioniert nicht" ist keine Fehlermeldung !

Das hier geht z.B. einwandfrei:
winscp.com /command "open sftp://username:password@ftp.domain.de" "option batch on" "put C:\test\* /remotedir/" "put C:\test\* /remotedir2/" "close" "exit"  
Member: bnfk859-forum
bnfk859-forum Jun 08, 2016 at 06:44:58 (UTC)
Goto Top
Hallo Skybird,

habe es jetzt mal wie Du beschrieben hast gemacht nicht mit winscp.com /script sondern direkt mit dem winscp.com /command damit ich halt im cmd auch die Meldungen sehe.

"open sftp://abcd" "option batch on" "put c:\XML\*.* /TM/TM_DIR1/" "put c:\XML\*.* /TM/TM_DIR2" "close" "exit"

läuft nun auch im Script, vielen Dank !!!!!!!!!!!!!!

Den copy von lokal zum Netzwerk von c:\xml lasse ich jetzt via robocopy laufen mit automatischen delete nach der Sicherung im Netz face-smile
Mitglied: 129413
129413 Jun 08, 2016 updated at 08:22:11 (UTC)
Goto Top
Zitat von @bnfk859-forum:
habe es jetzt mal wie Du beschrieben hast gemacht nicht mit winscp.com /script sondern direkt mit dem winscp.com /command damit ich halt im cmd auch die Meldungen sehe.
Naja, hättest du in der Batch eine Pause gesetzt hättest du auch die Fehler deines WINSCP-Skripts gesehen X). Typischer Anfängerfehler halt ...
läuft nun auch im Script, vielen Dank !!!!!!!!!!!!!!
Wie zu erwarten war. Keine Ursache.

Gruß skybird