web-dev-qa-db-fra.com

Comment télécharger un fichier du serveur en utilisant SSH?

Je dois télécharger un fichier du serveur sur mon bureau. (UBUNTU 10.04) Je n'ai pas d'accès Web au serveur, juste ssh.

Si cela peut aider, mon système d'exploitation est Mac OS X et iTerm 2 en tant que terminal.

750
NiLL

Dans votre terminal, tapez:

scp [email protected]:foobar.txt /local/dir

en remplaçant le nom d'utilisateur, l'hôte, le nom de fichier distant et le répertoire local, selon le cas.

Si vous souhaitez accéder à EC2 (ou à un autre service nécessitant une authentification à l'aide d'une clé privée), utilisez l'option -i:

scp -i key_file.pem [email protected]:/remote/dir/foobar.txt /local/dir

De: http://www.hypexr.org/linux_scp_help.php

1166
Josh1billion

Vous pouvez le faire avec la commande scp. scp utilise le protocole SSH pour copier des fichiers sur l'ensemble du système en étendant la syntaxe de cp.

Copier quelque chose d'un autre système sur ce système:

scp username@hostname:/path/to/remote/file /path/to/local/file

Copier quelque chose de ce système vers un autre système:

scp /path/to/local/file username@hostname:/path/to/remote/file          

Copier quelque chose d'un système à un autre:

scp username1@hostname1:/path/to/file username2@hostname2:/path/to/other/file   
322
raj_gt1

scp est certainement la voie à suivre, mais pour être complet, vous pouvez également le faire:

$ ssh Host 'cat /path/on/remote' > /path/on/local

ou

$ cat /path/on/local | ssh Host 'cat > /path/on/remote'

Notez que ceci est UUOC, mais < /path/on/local ssh Host 'cat > /path' pourrait créer une confusion inutile.

Et pour proxy entre deux hôtes:

$ ssh Host1 'cat /path/on/Host1' | ssh Host2 'cat > /path/on/Host2'
96
William Pursell

Si le serveur SSH prend en charge le sous-système SFTP (cela fait partie de SSH et sans lien avec FTP), utilisez sftp. Si ce n'est pas le cas, essayez scp.

CyberDuck les supporte tous.

13
J-16 SDiZ