J'utilise PSCP pour télécharger des fichiers de Windows vers Linux. Je peux le faire très bien en téléchargeant un fichier à la fois. Mais j'ai de très grands répertoires et je veux télécharger un répertoire entier à la fois.
J'ai essayé:
pscp -i C:\sitedeploy\abt-keypair.ppk includes\* [email protected]:/usr/local/tomcat/webapps/ROOT/includes/*
Lance l'erreur: "pscp: fichier distant / usr / local / tomcat / webapps / ROOT / includes / *: pas un répertoire"
et
pscp -i C:\sitedeploy\abt-keypair.ppk includes\ [email protected]:/usr/local/tomcat/webapps/ROOT/includes/
Lance erreur: "scp: inclut: pas un fichier normal"
et
pscp -i C:\sitedeploy\abt-keypair.ppk includes [email protected]:/usr/local/tomcat/webapps/ROOT/includes
Lance erreur: "scp: inclut: pas un fichier normal"
-r
?Réponses:
Deux problèmes: d'abord, le * ne va pas du côté de la destination. Deuxièmement,
-r
pour copier un répertoire entier et des sous-répertoires.Copiera tous les fichiers du
includes\
répertoire local dans le.../includes/
répertoire du serveur.Copiera le
includes\
répertoire lui-même, y compris tous les fichiers et sous-répertoires, dans le.../ROOT/
répertoire du serveur (où le contenu du répertoire local fusionnerait avec tout.../ROOT/includes/
répertoire existant .la source
Avertissement:
Vous n'avez pas besoin d'utiliser
-i
pour cela. C'est pour l'authentification de fichier de clé privée. Il suffit d’utiliser-r
pour copier les fichiers source de manière récursive.Vous voudrez peut-être une méthode de glisser-déposer puisque vous utilisez Windows. Vous pouvez, par exemple, utiliser le client WINSCP .
la source
Si vous souhaitez copier un répertoire et son contenu, vous n'avez pas besoin de spécifier de fichier pour la destination. Utilisez simplement le nom du répertoire, par exemple.
Si vous voulez copier le répertoire et tout ce qui se trouve en dessous, vous pouvez utiliser
-r
:la source