Précédent   Forum du club des développeurs et IT Pro > Systèmes > Linux > Contribuez

Contribuez Vos contributions pour la rubrique Linux : articles, cours, tutoriels, faq, comparatifs, tests, sources, ...

Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Affichage des résultats du sondage: Cet exemple est
Intéressant 3 100,00%
Inutile 0 0%
Votants: 3. Vous ne pouvez pas participer à ce sondage.

Publicité
'
Réponse
 
Outils de la discussion
Vieux 01/03/2011, 02h59   #1
hornetbzz
Membre chevronné
 
Avatar de hornetbzz
 
Homme
Directeur commercial
Inscription : octobre 2009
Messages : 481
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 45
Localisation : France

Informations professionnelles :
Activité : Directeur commercial

Informations forums :
Inscription : octobre 2009
Messages : 481
Points : 719
Points : 719
Envoyer un message via Skype™ à hornetbzz
Par défaut Comment dupliquer une arborescence locale sur un serveur distant

C'est toute la puissance de l'association des commandes sous Linux, et en particulier celle de la commande find. L'intérêt est de montrer l'utilisation correcte de la commande find (et éviter les chainages hasardeux avec ls/sed/cut etc...) , et que l'on peut bâtir de très nombreuses variantes sur ce principe - même pour des opérations plus simples - .

Comment reproduire toute l'arborescence d'un répertoire local donné - sans son contenu - sur un serveur distant :

Code :
1
2
3
find /home/repertoire_local/ -type d -print0 | \
ssh -p port user@server \
'while read -r -d "$(printf "\000")" -r dir; do test -d "$dir" || mkdir -p "$dir"; done'
C'est une seule et même ligne de commandes chainées, décomposées comme suit :
1ere ligne: on cherche les répertoires dans /home/repertoire_local/ ,
2eme ligne : on se connecte en ssh au serveur distant,
3eme ligne: sur le serveur connecté, on boucle sur les noms de répertoires locaux trouvés par find et on les crée s'ils n'existent pas.
hornetbzz est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 00h51.


 
 
 
 
Partenaires

Hébergement Web