Fichiers de configuration et repertoires de configurations

bahbousra -  
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir,
j'ai un problème sur un exercice on me demande
1) le nombre de fichiers de fichiers de configurations l'indication est de compter le nombre de fichiers commençant par un point situés dans répertoire principal en éliminant les copies de sauvegardes <<qui finissent par tilde >>
2) le nombre de répertoires de configuration
A voir également:

3 réponses

lEprofSonDkon Messages postés 211 Date d'inscription   Statut Membre Dernière intervention   13
 
salut,

tu sais faire une boucle
for
pour itérer sur les fichiers du répertoire courant ?
tu as lu dans le
man bash
le paragraphe sur la correspondance de motifs ?
tu as lu
help test
?
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

Sans oublier ça aussi ;-)
0
bahbousra > zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention  
 
salut j'ai lu ça les conditions mais j'ai beau essayé l'exercice
cordialement
0
lEprofSonDkon Messages postés 211 Date d'inscription   Statut Membre Dernière intervention   13 > bahbousra
 
montre-nous ce que tu as fait.
0
bahbaousra
 
ls -a | grep "^\." | grep "[^~]$" | wc -l


Voilà ce que j'ai pour les fichiers de configuration
0
lEprofSonDkon Messages postés 211 Date d'inscription   Statut Membre Dernière intervention   13
 
eh, ben, c'est pas mal.
mais ça ne va pas :
-a
va aussi afficher le répertoire courant, et le répertoire parent (cf.
man ls
)
wc -l
compte les retours à la ligne : si un fichier en contient, le résultat sera faux.

et ça va à l'encontre de ce que j'ai préconisé dans mon message au #1
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
Hello,

Utilise find exec :)

Tu peux tester avant en faisant un ls
find /path/to/dir \
-type f \
-name "*~" \
-exec ls -lah --full-time {} \;


find : la commande
-type : f ou d, correspond a fichier ou dossier ( file, dir )
-name : le nom, wildcard valide. On peut utiliser -iname pour etre insenssible à la casse
-exec : execute le code suivant sur {} \ qui correspond au fichier trouvé.


Puis supprimer :

find /path/to/dir \
-type f \
-name "*~" \
-exec rm {} \;


Ou appeler des scripts :

find /path/to/dir \
-type f \
-name "*~" \
-exec /home/script.sh {} \;


Executer du code sh -c etc etc

A plus

0