Ich möchte ein Verzeichnis von SFTP auf einen Server herunterladen. Ich kann mich mit SFTP anmelden
sftp rob2056@storagename
und kann dann einzelne Dateien erhalten mit:
get *.txt /remotedir
Ich möchte jedoch mehrere Verzeichnisse von sftp auf remote herunterladen, was ich nicht kann:
get -r * /remotedir
(funktioniert nicht)
get -r /remotedir
stattdessen?sftp -r rob2056@storagename
...? Ich vermute, dass Ihre Version vonsftp
möglicherweise nicht unterstützt wird-r
. In diesem Fall würden Sie es aktualisieren oder ein anderes Tool wiescp
.Antworten:
Wurde das lokale Remote-Verzeichnis bereits erstellt, bevor der Befehl
get -r * /remotedir
ausgegeben wurde?Ich habe es versucht:
Erstellt ein Verzeichnis auf dem lokalen Rechner remotedir, in das ich alle Ordner übertragen musste.
Den Befehl
get -r * remotedir
ohne Schrägstrich ausgegeben und es hat funktioniert. Ich habe keine Ahnung, warum das / wichtig ist.quelle
Verwenden Sie mget anstelle von get, wenn Sie Metazeichen wie
'
und verwenden?
. Sie könnten sich das m als ein Vielfaches vorstellen .quelle
Mit diesem Befehl kann das gesamte Verzeichnis kopiert werden.
quelle
Möglicherweise kann Ihr SFTP-Client Verzeichnisse nicht spiegeln.
Es gibt jedoch auch andere SFTP-Clients. Möglicherweise möchten Sie eine andere oder eine neuere Version Ihres Clients installieren. Der SFTP-Client im RedHat-Paket
openssh-clients-6.4
kennt beispielsweise die Option -r.So habe ich die Version meines SFTP-Clients erhalten:
Abgesehen davon möchten Sie möglicherweise eine Websuche durchführen
sftp client
.quelle