Dateien über putty herunterladen

PSCP gibt einen ERRORLEVEL von Null (Erfolg) nur zurück, wenn die Dateien korrekt übertragen wurden. Sie können dies in einer Batchdatei testen, indem Sie Code wie diesen verwenden: Wie für Rechte, nein, Sie brauchen nicht root, um ssh, und wenn sie Ihre Berechtigungen reduzieren, aber Ihnen die erforderlichen Berechtigungen für die Dateien erteilen, die Sie benötigen, sollte das für Sie gut funktionieren. Persönlich erlaube ich keine Root-Anmeldung über ssh, aber ich neige nicht dazu, distros auszuführen, die standardmäßig ein Root-Konto aktivieren. Standardmäßig kopiert PSCP nur Dateien. Alle Verzeichnisse, die Sie zum Kopieren angeben, werden übersprungen, ebenso wie ihr Inhalt. Die Option -r weist PSCP an, in alle von Ihnen angegebenen Verzeichnisse abzusteigen und sie und deren Inhalt zu kopieren. Auf diese Weise können Sie PSCP verwenden, um ganze Verzeichnisstrukturen zwischen Maschinen zu übertragen. Ich erzweige verschiedene Optionen zum Schreiben eines Programms, das den Download von Dateien auf einem SSH-Server automatisieren kann. Ich benötige es, um mich automatisch anzumelden, zu verschiedenen Verzeichnissen zu navigieren und alle Dateien von dort herunterzuladen.

Standardmäßig werden mit PSCP kopierte Dateien mit einem Zeitstempel versehen, mit dem Datum und der Uhrzeit, zu der sie kopiert wurden. Die Option -p behält den ursprünglichen Zeitstempel für kopierte Dateien bei. Jedoch, nach weiterem Denken, scheint es mir, dass es einfacher sein kann, PuTTY-Befehlszeile zu verwenden, um alle Dateien aus verschiedenen Ordnern auf meinen eigenen Windows-Computer herunterzuladen. PSCP, der PuTTY Secure Copy-Client, ist ein Tool zum sicheren Übertragen von Dateien zwischen Computern über eine SSH-Verbindung. Dies ist auf eine grundlegende Unsicherheit im alten SCP-Protokoll zurückzuführen: Der Client sendet die Platzhalterzeichenfolge (*.c) an den Server, und der Server sendet eine Sequenz von Dateinamen zurück, die dem Platzhaltermuster entsprechen. Es gibt jedoch nichts, was den Server daran hindert, ein anderes Muster zurückzusenden und über eine Ihrer anderen Dateien zu schreiben: Wenn Sie *.c anfordern, sendet der Server möglicherweise den Dateinamen AUTOEXEC zurück. BAT und installieren Sie einen Virus für Sie. Da die Platzhalterabgleichsregeln vom Server festgelegt werden, kann der Client nicht zuverlässig überprüfen, ob die zurückgesendeten Dateinamen mit dem Muster übereinstimmen. Bevor Sie eine Verbindung zu Ihrem Konto herstellen und Dateien übertragen können, müssen Sie Pageant (eine der Anwendungen, die mit dem PuTTY-Installationspaket enthalten ist) öffnen und Ihren privaten SSH-Schlüssel hinzufügen. Nachdem Sie Die Windows-Eingabeaufforderung gestartet haben (Start-Taste>Run>type cmd>OK) geben Sie den folgenden Befehl ein, um PSCP und PSFTP zum Systempfad hinzuzufügen, und drücken Sie die Eingabetaste: set path=%path%;d:`putty`.

Der Befehl ist gültig, wenn das PuTTY-Installationspaket in einem Ordner namens Putty auf Ihrem lokalen D-Laufwerk installiert ist. Ändern Sie einfach den Pfad, um auf Ihren PuTTY-Ordner zu zeigen. Im zweiten Fall (unter Verwendung eines Platzhalters für mehrere Remotedateien) wird jedoch möglicherweise eine Warnung angezeigt, die so etwas wie «Warnung» sagt: Der Remote-Host hat versucht, in eine Datei namens «terminal.c» zu schreiben, als wir eine Datei namens «*.c» angefordert haben.