Ich möchte Dateien von einem Remote-Server auf mein lokales Laufwerk herunterladen und dies über die Befehlszeile tun. Ich möchte dies auch über SSH tun können. Wie kann ich das machen?
Hinweis: Der Remote-Server ist Ubuntu, der lokale ist Mac OS X
ubuntu
command-line
ssh
Andrew
quelle
quelle
scp username@remote1:/path/to/file username@remote2:/path/to/file
-p
Option beim Kopieren von Dateien oder Ordnern mit hinzuzufügenscp
. Es kopiert auch die Dateiattribute (Zeitstempel und Flags). Ich finde, ich will-p
öfter, als ich es nicht will!-3
Flag auch von Remote zu Remote über den Localhostscp -3 [email protected]:/files/file1.zip [email protected]:/archives
weiterleiten : Dies ist hilfreich, wenn Sie einen privaten Schlüssel für den Zugriff auf beide Server verwenden müssen, die nur auf Localhost vorhanden sind:scp -3i /local/path/to/.ssh/private_key dan@host1:/path/to/file.txt miri@host2:/path/to/upload/dir/
Die Fortschrittsanzeige ist für -3 deaktiviertSie können auch dafür verwenden
rsync
. Es kann über SSH arbeiten.quelle
rsync -avvP
ist mein Favorit für Dateien und / oder Ordner, aber es gibt einen Nachteil: Es muss auf dem Remote-Computer installiert werden.-e ssh
, um rsync anzuweisen, eine Verbindung über ssh herzustellen.Ich benutze dafür SFTP. Die Befehlszeile verwendet dieselbe Sicherheit wie SSH.
quelle
Wenn Sie
scp
oder SFTP nicht verwenden können, können Sietar
über SSH verwenden:Dieser ist auch gut, wenn Sie spärliche Dateien haben, die sonst "explodieren".
quelle