Comment copier un fichier dans plusieurs répertoires dans Linux

Comment copier un fichier dans plusieurs répertoires dans Linux

En tant qu'utilisateur Linux, vous devez bien connaître la commande Linux CP. Qui est utilisé pour copier des fichiers d'un répertoire à un autre répertoire.

Ce tutoriel vous expliquera comment copier un fichier dans plusieurs répertoires dans une seule commande.

Par défaut, nous pouvons copier un fichier dans un répertoire de destination unique dans une commande. Par exemple, copiez un fichier Tecadmin.TXT de Home Directory à deux répertoires différents, utilise des commandes comme:

cp -v ~ / tecadmin.txt / backup / dir1 /  cp -v ~ / tecadmin.txt / backup / dir2 /  

Maintenant, utilisez la commande suivante pour copier le même fichier sur les deux répertoires de destination dans une seule commande. Ici, nous utilisons la commande echo suivie des noms de répertoire de destination. Ensuite, tuyau les résultats sur les commandes Xargs, qui prendra les noms de répertoire comme entrée et le transmettra à la commande CP.

Echo / Backup / Dir1 / / Backup / Dir2 / | xargs -n 1 cp -v ~ / tecadmin.SMS  

Ensuite, vérifiez que le fichier source est copié dans les deux répertoires de destination. Utilisez simplement la commande LS pour lister le fichier aux deux endroits.

ls -l / backup / dir1 / tecadmin.SMS  ls -l / backup / dir2 / tecadmin.SMS  

Vous constaterez que le même fichier est copié sur les deux destinations en commande unique.

Lors de la copie du fichier dans 2-3 répertoires, vous pouvez le faire facilement avec plusieurs commandes. Mais pensez, si vous devez le copier sur un grand nombre de répertoires à la fois. Par exemple, j'ai un serveur WHM / CPANEL avec un grand nombre de compte et je souhaite placer un fichier dans chaque comptes Public_HTML. Nous pouvons le faire en une seule commande en tant que:

echo / home / * / public_html / | xargs -n 1 cp -v ~ / tecadmin.SMS  [sortie] '/ root / tecadmin.txt '->' / home / user1 / public_html / tecadmin.txt "/ root / tecadmin.txt '->' / home / rahul / public_html / tecadmin.SMS' 

J'espère que ce tutoriel vous aidera à comprendre pour copier le fichier dans plusieurs répertoires dans une seule commande.