So laden Sie eine lokale Datei über das Linux-Terminal auf den Server hoch

Ich versuche, lokale Dateien mit Putty oder SSH auf den Server hochzuladen, aber dort nicht hochzuladen.

Gibt es eine direkte Methode, um Dateien vom lokalen auf den Server vom Linux-Terminal hochzuladen, ohne FTP usw. zu verwenden ?

Author: Sanjeev Kumar Goswami, 2014-12-10

3 answers

Sicher. Verwenden scp (sichere Kopie) wie folgt:

scp [source file] [username]@[destination server]:.

Ersetzen Sie natürlich die Klammern [source file], [username] und [destination server], um Ihren lokalen Einstellungen zu entsprechen. Wenn also die Datei cool_stuff.txt und Ihr Benutzername auf dem Remote-Server sanjeev und der Ziel-Server example.com, lautet der Befehl:

scp cool_stuff.txt [email protected]:.

Und die Quelle könnte auch remote sein, sodass Sie dies tun können, um das Gegenteil des obigen Beispiels zu tun:

scp [email protected]:cool_stuff.txt .

Dieser Befehl würde die entfernte Datei cool_stuff.txt in was auch immer kopieren lokales Verzeichnis, in dem Sie sich befinden. Und wenn Sie dies mit mehreren Dateien tun, verwenden Sie einfach einen Platzhalter (*) wie für einen normalen cp Befehl.

Außerdem gibt das . nur den unmittelbaren Verzeichnispfad an; z. B. den, in dem Sie sich gerade befinden, wenn Sie den Befehl ausführen, oder den unmittelbaren Pfad, den der Remotebenutzer auf dem Zielserver hat. Sie können aber auch einen Pfad wie /this/path/right/here im Beispiel lokal zu remote angeben:

scp cool_stuff.txt [email protected]:/this/path/right/here

Oder die Fernbedienung zum lokalen Beispiel rechts hier:

scp [email protected]:cool_stuff.txt /this/path/right/here

Wenn der Remote-Server SSH und nur SFTP nicht zulässt, ist SFTP der richtige Weg. Aber scp ist sehr nützlich, wenn Sie nur eine Datei werfen und nicht den gesamten SFTP-Prozess manuell über die Befehlszeile ausführen möchten.

 95
Author: Giacomo1968,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-07-26 13:38:56

Wenn die Anmeldung am Remote-Server über den Schlüssel ssh erfolgt, können wir das folgende Flag -i verwenden, um unseren Schlüssel an den Server zu übergeben:

scp -i /path/to/.ssh/id_rsa path/to/file/myFiles.gz myServer.com:/folder/on/server

-ich identity_file
Wählt die Datei aus, aus der die Identität (privater Schlüssel) für die Authentifizierung mit öffentlichem Schlüssel gelesen wird.
Diese option wird direkt an ssh(1).

 23
Author: zx8754,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-11-27 10:10:11

Um zu Jakes Antwort hinzuzufügen, können Sie anstelle von . einen Speicherort angeben, in den kopiert werden soll, indem Sie den Pfad am Ende der URL hinzufügen als:

scp /path/to/file username@servername/ip:/destination/folder/
 15
Author: CBinyenya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-06-04 10:51:13