Utiliser la commande FIND non recursive
Résolu
noury
-
bill -
bill -
Bonjour,
est ce que quelqu'un c'est comment utiliser la commande find sans descendre dans l'arborescence des répertoires ?
est ce que quelqu'un c'est comment utiliser la commande find sans descendre dans l'arborescence des répertoires ?
7 réponses
-
Tu utilises l'option -maxdepth
find . -name '*.c' -maxdepth 1 -type f
--> tous les fichiers du répertoire courant.
Johan
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin) -
Je ressors le sujet de sa tombe au cas où quelqu'un tombe dessus lors d'une recherche.
En fait, il y a une solution avec prune :
find . \( -type d ! -name . -prune \) -o -type f -print
1) On indique que les répertoires qui ne s'appellent pas "." ne sont pas parcourus
2) On demande l'affichage des fichiers-
-
-
et sinon sous AIX il suffit d'utiliser la commande ls sans filtre (la limitation du ls n'apparait qu'avec des filtres).
donc ls -1|grep TOTO pour filtrer tous les fichiers du répertoire courant qui contiennent "TOTO"
ou ls -1|awk '/^TOTO.*$/' pour filtrer tous les fichiers du répertoire courant qui commencent par TOTO ( etc...)
=> pas de récursivité
pour supprimer (exemple avec tous les fichiers commençant par TOTO:
ls -1|awk '/^TOTO.*$/{system("rm -f " $0)}' -
-
-
-
ben fais un man find pour plus d'infos su la commande find de linux.
find dossier_ds_lequel_tu_cherches -name nom_du_fichier_a_chercher
Bahan
Close the world.||.txen eht nepO -
bonjour
J'ai la même question mais pour AIX/Solaris/etc, c'est pà dire pas Linux !
-[min/max]depth n'existe pas.
Je pense personellement que c'est impossible, maisquelqu'un a peut être un autre avis ? -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
non non, on peut ou on peut pas mais il faut savoir que ça ne marche que sous Linux, point barre.
A priori on devrait clore ce sujet et statut résolu. -
Pour AIX/Solaris/etc vous pouvez utilisez -prune
(Je viens de voir que la réponse a déjà été donné..)