SCP plusieurs fichiers

SCP plusieurs fichiers
SCP est un puissant utilitaire de ligne de commande qui vous permet de copier des fichiers et des répertoires entre les machines distantes. SCP utilise le protocole SSH pour transférer en toute sécurité les fichiers entre les hôtes connectés.

En tant qu'outil, SSH vous oblige à fournir un mot de passe pour l'utilisateur SSH ou une clé SSH pour l'hôte cible. Dans ce tutoriel, nous explorerons comment copier les fichiers et les répertoires à l'aide de la commande SCP.

Commande SCP

La commande SCP est disponible dans tout système qui a installé les packages SSH-Client et Server installés. Vous pouvez ensuite invoquer la commande SCP avec la syntaxe suivante:

$ SCP User @ Source_Host: Source_FileName User @ Destination_host: Destination_FileName

La commande précédente prend peu de paramètres tels que:

  1. user @ source_host - fait référence au nom d'utilisateur et à l'adresse de la machine source. Vous devez également spécifier le nom de fichier source après le côlon comme indiqué dans la syntaxe précédente.
  2. User @ Destination_Host - Spécifie le nom d'utilisateur et l'adresse de l'hôte cible auquel vous souhaitez transférer les fichiers.

Assurez-vous que l'utilisateur spécifié a les autorisations de lecture et d'écriture sur le fichier cible ou le répertoire de l'hôte distant.

Vous pouvez également spécifier d'autres options dans la commande SCP pour modifier son comportement par défaut. Les options acceptées incluent:

  1. -P - Définit le port pour l'hôte distant
  2. -C - permet au SCP de compresser les données pendant le transfert
  3. -R - permet à SCP de copier des fichiers et des répertoires récursivement
  4. -Q - Mode silencieux, cache le compteur de progrès et les messages non erroraux
  5. -P - Permet à SCP de préserver les fichiers et les attributs de répertoire
  6. -V - Active le mode verbeux. Afficher tous les messages descriptifs et l'état de progrès
  7. -L - limite la bande passante utilisée par l'utilitaire SCP

Vous pouvez vérifier les autres options en exécutant la commande suivante:

$ man scp

Remarque: Bien que SCP affiche les messages descriptifs des fichiers et des répertoires que vous copiez, il ne vous invitera pas à écraser les fichiers. Par conséquent, assurez-vous de fournir des noms uniques aux fichiers que vous copiez pour éviter la perte de données.

Copier le fichier du local à l'hôte distant

Vous pouvez copier un fichier à partir de votre machine locale à un hôte distant en exécutant la commande suivante:

$ SCP Source_file.user user @ rote_addr: / distant / dir

Par exemple, pour copier le fichier bonjour.Txt vers / home / debian / files répertoire, nous pouvons exécuter la commande suivante:

$ SCP Bonjour.txt debian @ 172.76.32.113: / Home / Debian / Fichiers

La commande vous demandera le mot de passe de l'utilisateur distant spécifié. Si vous avez ajouté votre clé SSH à l'hôte distant, la commande se connectera automatiquement et transférera les fichiers cibles.

Gardez à l'esprit que la commande SCP préservera le nom de fichier d'origine sauf si spécifié. Par exemple, pour enregistrer le fichier sous un autre répertoire, vous pouvez exécuter cette commande suivante:

$ SCP Bonjour.txt debian @ 172.76.32.113: / home / debian / files / hello_new.SMS

Cela changera le nom de fichier de Hello.txt à hello_new.txt sur la machine distante.

Copier le répertoire de l'hôte local à distant

Si vous souhaitez copier un répertoire à partir de votre machine locale vers un hôte distant, utilisez l'option récursive comme indiqué dans la syntaxe suivante:

$ SCP -R SRC_DIR User @ Remote_host: / Path / On / Remote / Host /

Par exemple, pour copier tous les fichiers du répertoire / var / logs de la machine locale, vous pouvez exécuter la commande suivante:

$ scp -r / var / logs / debian @ 172.76.32.113: / Home / Debian / Logs

Les drapeaux -r indiquent à la commande SCP de copier le répertoire récursivement. Si le répertoire cible n'existe pas sur l'hôte distant, le SCP le créera automatiquement.

Copier les fichiers de l'hôte à l'hôte distant

Dans certains cas, vous devrez peut-être copier des fichiers d'un hôte distant vers un autre hôte distant. Vous pouvez y parvenir en exécutant la commande suivante:

$ SCP User_1 @ host_1: src_file user_2 @ host_2: target_path

La commande copiera les fichiers spécifiés dans le paramètre src_file sur le chemin spécifié dans le paramètre Target_Path.

Assurez-vous que les deux machines sont en ligne et qu'ils peuvent communiquer via SSH.

Conclusion

Ce tutoriel vous guide à l'aide de la commande SCP pour copier les fichiers et les répertoires via SSH.