Pour utiliser toute la puissance de scp vous devez passer par les étapes suivantes :
- Autorisation de la clé publique
- Créer des alias ssh
Alors, par exemple, si vous avez ceci ~/.ssh/config :
Host test
User testuser
HostName test-site.com
Port 22022
Host prod
User produser
HostName production-site.com
Port 22022
vous vous épargnerez la saisie d'un mot de passe et simplifierez scp une syntaxe comme celle-ci :
scp -r prod:/path/foo /home/user/Desktop # copy to local
scp -r prod:/path/foo test:/tmp # copy from remote prod to remote test
De plus, vous serez en mesure d'utiliser la complétion de chemin à distance :
scp test:/var/log/ # press tab twice
Display all 151 possibilities? (y or n)
Mise à jour :
Pour permettre la complétion de bash à distance, vous devez avoir bash-shell sur les deux sites <source>
y <target>
hôtes, et une complétion bash fonctionnant correctement. Pour plus d'informations, voir les questions connexes :
Comment activer l'autocomplétion pour les chemins distants en utilisant scp ?
Compléter l'onglet du nom de fichier SCP
92 votes
La question de l'OP était de savoir s'il était possible de copier un fichier d'un hôte distant vers un hôte local. tout en étant connecté en ssh à l'hôte distant . Je ne comprends pas pourquoi aucune réponse n'a répondu correctement à sa question.
8 votes
La prémisse de la question est incorrecte. L'idée est la suivante : une fois connecté à ssh, comment déplacer les fichiers de la machine connectée vers le client qui est connecté. Cependant, scp n'est pas au courant de la connexion ssh et ne peut pas l'utiliser. Il établit ses propres connexions. La solution la plus simple est donc de créer une nouvelle fenêtre de terminal sur le poste de travail local, et d'exécuter scp qui transfère les fichiers du serveur distant vers la machine locale. Par exemple, scp -i key user@remote:/remote-dir/remote-file /local-dir/local-file
0 votes
Utilice
mc
:TAB
,cd sh://USER@HOST
, utilisez les raccourcis mc,cd
une fois terminé.0 votes
@sjas : en
mc
il est plus facile à utiliser Gauche/Droite dans le menu > Lien Shell où vous pouvez taper l'alias que vous avez dans votre~/.ssh/config
par exemplemyhost:
> OK