Fichiers de configuration et repertoires de configurations

Fermé
bahbousra - 24 mai 2019 à 23:03
Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 - 6 juin 2019 à 21:13
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 jeudi 13 décembre 2018 Statut Membre Dernière intervention 8 octobre 2022 13
24 mai 2019 à 23:50
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 dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
25 mai 2019 à 09:57
Salut,

Sans oublier ça aussi ;-)
0
bahbousra > zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021
25 mai 2019 à 15:18
salut j'ai lu ça les conditions mais j'ai beau essayé l'exercice
cordialement
0
lEprofSonDkon Messages postés 211 Date d'inscription jeudi 13 décembre 2018 Statut Membre Dernière intervention 8 octobre 2022 13 > bahbousra
25 mai 2019 à 16:01
montre-nous ce que tu as fait.
0
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 jeudi 13 décembre 2018 Statut Membre Dernière intervention 8 octobre 2022 13
29 mai 2019 à 03:12
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 mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
Modifié le 6 juin 2019 à 21:19
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