![]() |
Dateien mit scp verschieben/nicht kopieren
Hallo!
Bin auf der Suche nach einer Möglichkeit (Script, ähnliches) Dateien von einem Server auf einen anderen mittel SCP zu VERSCHIEBEN (+ Unterverzeichnisse) und nicht zu kopieren (bzw. zu kopieren und nachher zu löschen! Das Ganze sollte ca. so sein: statt wie üblich scp -r login@fremderserver.at:/* /home/download/ sollte es dann sein scpmove -r login@fremderserver.at:/* /home/download/ Kann mir da wer helfen? Vielen Dank!! |
naja...
erst kopieren und dann löschen... wo genau liegt da das Problem? mfg c. |
schreib dir einfach ein script, das scpmove heisst wo du zuerst kopierst, und dann löscht...
dann hast du genau den befehl den du willst ;) |
Zitat:
|
Ich würde zuerst ein Tar erstellen, dann kopieren, dann löschen
#!/bin/sh tar -xf download.tar /pfad/zum/verzeichnis/* scp download.tar user@ip.ip.ip.ip:/home/user/ rm -r /pfad/zum/verzeichnis/* Du mußt nur mehr die Schlüsseln zwischen den Maschinen austauschen, das scp ohne Paßwortabfrage durchläuft. Sloter |
@sloter:
da müsste noch 1) das tar file gelöscht werden 2) das tar file am remote host entpackt werden mfg c. |
@sloter:
Geniale Idee! :cool: Mein Traum-Szenario ist: Start: scpmove Verbindung: zu Remoteserver Remote: Komprimieren der Dateien mit Unterverzeichnissen Verbindung: übertragen der kompr. Datei Lokal: Entpacken der Datei in Unterverzeichnisse Remote: löschen der kompr. Datei / der Dateien noch besser wäre: scpmove user@remote:/verzeichnis/* zielverzeichnis und der rest geschieht vollautomatisch und mittels ssh-schlüssel! Wundert mich, dass das noch niemand implementiert/programmiert hat :confused: |
Zitat:
1, warum? wird überschrieben......... 2, auch wieder warum? entpackst am Tape auch die Sicherung gleich nach dem schreiben? Aber bitte :) #!/bin/sh tar -cf download.tar /pfad/zum/localen/verzeichnis/* # lesen http://www.linuxnetmag.com/de/issue8/m8rsync1.html#23 scp download.tar user@ip.ip.ip.ip:/home/user/ #lesen man rhosts rsh ip.ip.ip.ip "rm -r /pfad/wo/alte/entpackte/liegen/* rsh ip.ip.ip.ip "tar -xf /pfad/wo/kopie/download.tar" rm /pfad/zum/localen/verzeichnis/download.tar Schöner wärs mit rsnc :-) Sloter |
Zitat:
zu 1.: nur, wenn man immer das gleiche Dir kopiert zu 2.: Du gehst davon aus, dass es sich um ein Backup handelt. Das ist jedoch scheinbar nicht der Fall, da sonst die alten Daten nicht gelöscht werden würden. |
Nein, es soll KEINE Backup-Lösung sein!
mein Wunsch nur, dass alles gleich auf einmal geht! sozusagen: einem Script werden Quelle und Ziel übergeben, alles wird per SSH kopiert und danach gelöscht! automatisch und ohne langes einloggen! eben weil SCP bekannterweise nicht z.B. -movefiles oder sowas hat, dass die Dateien nach erfolgreicher Übertragung auch gleich gelöscht werden! und das Ganze funktioniert dann ohne rsync oder ähnliches mit jedem Server, der SSH/SCP unterstützt! Ein Script deshalb, um das ganz dann z.B. jede Stunde einmal zu machen! und ohne grafische Oberfläche! |
Zitat:
was hältst du davon? aufruf ist: ./scpmove $USER $SERVER $REMOTE_DIR $LOCAL_DIR $TAR_FILENAME REMOTE_DIR ist _OHNE_ "*" anzugeben, das macht das script! Code:
#!/bin/sh |
Zitat:
Sloter |
noch ein kleines update, damit das script nicht mit falschen daten arbeitet, wenn man eine der angaben vergessen hat:
und wenn man jetzt noch die "echo ..." im if-block herausnimmt, dann arbeitet das script ganz leise, ausser es passiert ein fehler. Code:
#!/bin/sh |
@valo
Genial! :D :) :D :) :lol: :) :D :) :D So hab ich mir das vorgestellt!! :D Mein Problem ist, dass ich ein bissi programmieren kann, aber eben nicht gut genug :rolleyes: Dein Script funktioniert schon mal vom Hinsehen :D Danke für Deine Mühe! Ich werde es in Kürze testen! Long life :tux: |
Zitat:
freut mich, dass es gut funktioniert. es gibt sicher noch einige sachen die man verbessern könnte... zb automatische erkennung ob von einem server kopiert werden soll, oder von lokal nach server... :D |
Das Topic ist zwar schon älter, tauchte aber grade heute auch in der Newsgroup de.comp.os.unix.shell auf. Es wurden 2 interessante Antworten präsentiert:
Von Marcel Meckel: Code:
Robert K. schrieb:Code:
mknod /tmp/fifo p |
| Alle Zeitangaben in WEZ +2. Es ist jetzt 12:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag