Est-il possible d’utiliser la commande find
d’une manière qui ne déclenche pas de récurrence dans les sous-répertoires? Par exemple,
DirsRoot
|-->SubDir1
| |-OtherFile1
|-->SubDir2
| |-OtherFile2
|-File1
|-File2
Et le résultat de quelque chose comme find DirsRoot --donotrecuourse -type f
sera seulement File1, File2
?
Je pense que vous obtiendrez ce que vous voulez avec l'option -maxdepth 1
, en fonction de votre structure de commande actuelle. Sinon, vous pouvez essayer de regarder page de manuel pour find
.
Entrée pertinente (pour des raisons de commodité):
-maxdepth levels
Descend at most levels (a non-negative integer) levels of direc-
tories below the command line arguments. `-maxdepth 0' means
only apply the tests and actions to the command line arguments.
Vos options sont essentiellement:
find DirsRoot/* -maxdepth 0 -type f #This does not show hidden files
Ou:
find DirsRoot/ -maxdepth 1 -type f #This does show hidden files
Je crois que vous cherchez -maxdepth 1
.
Si vous recherchez une solution compatible POSIX:
cd DirsRoot && find . -type f -print -o -name . -o -Prune
- maxdepth n'est pas une option compatible POSIX.