Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/12/2011, 11h43   #1
Membre habitué
 
Avatar de l4r3nZu
 
Homme Laurent Quastana
Ingénieur développement logiciels
Inscription : janvier 2010
Messages : 114
Détails du profil
Informations personnelles :
Nom : Homme Laurent Quastana
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : janvier 2010
Messages : 114
Points : 129
Points : 129
Par défaut Archiver une arborescence

Bonjour ,

Voici mon problème ,

Je voudrai faire une archive soit .zip ou .tar d'une arborescence , sans archiver les fichiers présent dans cette arborescence.

ce qui me bloque c'est de copier juste les répertoires sans les fichiers .

Merci d'avance ,
Cordialement.
l4r3nZu est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 09/12/2011, 12h22   #2
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Salut,

Une idée comme une autre...

Faire une liste de tous les fichiers de ton arborescence :

Code :
find /chemin -type f -printf "%f\n" > fichiers_exclus
Faire une archive "tar" en excluant les fichiers de la liste :

Code :
tar -cvf archive.tar -X fichiers_exclus /chemin
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 30
Vieux 09/12/2011, 14h06   #3
Membre habitué
 
Avatar de l4r3nZu
 
Homme Laurent Quastana
Ingénieur développement logiciels
Inscription : janvier 2010
Messages : 114
Détails du profil
Informations personnelles :
Nom : Homme Laurent Quastana
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : janvier 2010
Messages : 114
Points : 129
Points : 129
Merci pour ta réponse ,

j'ai essayé

Code :
tar -cvf env.tar -X $(find . -type f) .
Et cela ne fonctionne pas , les fichiers sont que même ajouté au tar :/

Merci pour l'aide
l4r3nZu est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 09/12/2011, 14h46   #4
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 538
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 538
Points : 7 754
Points : 7 754
normal -type f = selection des fichiers

il faut faire -type d pour les directories
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 09/12/2011, 16h24   #5
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Citation:
Envoyé par l4r3nZu Voir le message
j'ai essayé
Code :
tar -cvf env.tar -X $(find . -type f) .
Et cela ne fonctionne pas , les fichiers sont que même ajouté au tar :/
Et en créant le fichier avant au lieu d'essayer de tout faire d'un coup, ça marche ou pas ?
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 09/12/2011, 22h06   #6
Membre habitué
 
Avatar de l4r3nZu
 
Homme Laurent Quastana
Ingénieur développement logiciels
Inscription : janvier 2010
Messages : 114
Détails du profil
Informations personnelles :
Nom : Homme Laurent Quastana
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : janvier 2010
Messages : 114
Points : 129
Points : 129
Voila ce que j'ai fait finalement
Code :
1
2
3
4
5
6
 
cd mon_rep_cible
for rep in $(find . -type d)
do 
    mkdir $rep
done
tout simplement
En tout cas merci pour votre aide
l4r3nZu est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 09/12/2011, 22h25   #7
Membre habitué
 
Avatar de Levi59
 
Homme
Étudiant
Inscription : août 2011
Messages : 46
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2011
Messages : 46
Points : 126
Points : 126
Attention à la boucle for sur le résultat de find car ça gère très mal les noms de fichiers/dossiers avec espaces.
__________________
Carpe Diem
Levi59 est déconnecté   Envoyer un message privé Réponse avec citation 11
Vieux 10/12/2011, 16h43   #8
Expert Confirmé Sénior
 
Avatar de Sve@r
 
Homme Frédéric
Ingénieur développement logiciels
Inscription : février 2006
Messages : 3 055
Détails du profil
Informations personnelles :
Nom : Homme Frédéric
Âge : 44
Localisation : France, Oise (Picardie)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 3 055
Points : 4 934
Points : 4 934
Citation:
Envoyé par l4r3nZu Voir le message
Citation:
Envoyé par zipe31 Voir le message
Salut,

Une idée comme une autre...

Faire une liste de tous les fichiers de ton arborescence :

Code :
find /chemin -type f -printf "%f\n" > fichiers_exclus
Faire une archive "tar" en excluant les fichiers de la liste :

Code :
tar -cvf archive.tar -X fichiers_exclus /chemin
j'ai essayé

Code :
tar -cvf env.tar -X $(find . -type f) .
Et cela ne fonctionne pas , les fichiers sont que même ajouté au tar :/
Salut

Si tu avais lu attentivement son exemple... ou au-moins le man de tar, tu aurais vu que "-X" demande en paramètre un fichier (fichier contenant la liste des fichiers à exclure) et non la liste elle-même...

Citation:
Envoyé par l4r3nZu Voir le message
Voila ce que j'ai fait finalement
Code :
1
2
3
4
5
6
 
cd mon_rep_cible
for rep in $(find . -type d)
do 
    mkdir $rep
done
tout simplement
En tout cas merci pour votre aide
Là je ne pige pas ton code.
1) tu te déplaces dans le dossier de destination
2) tu recherches tous les dossiers présents dans "." (donc dans le dossier de destination) et tu les crées (donc dans le dossier de destination) => s'ils y sont déjà alors pourquoi vouloir les créer (surtout que mkdir refuse de créer un dossier existant)...

Et en plus ton code ne correspond pas à ton problème, à savoir "archiver" une arborescence sans les fichiers...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
Dr. Adrian Rogers, 1931
Sve@r est déconnecté   Envoyer un message privé Réponse avec citation 11
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h11.


 
 
 
 
Partenaires

Hébergement Web