Je cherche un moyen de lister tous les fichiers dans un répertoire à l'exclusion des répertoires eux-mêmes, et les fichiers dans ces sous-répertoires.
Donc si j'ai:
./test.log
./test2.log
./directory
./directory/file2
Je veux une commande qui renvoie: ./test.log ./test2.log et rien d'autre.
Si tu veux test.log
, test2.log
, et file2
puis:
find . -type f
Si tu ne veux pas file2
puis:
find . -maxdepth 1 -type f
Si vous avez besoin que les liens symboliques, les canaux, les fichiers de périphérique et d'autres éléments spécifiques du système de fichiers soient également répertoriés, vous devez utiliser:
find -maxdepth 1 -not -type d
Cela listera tout sauf les répertoires.
l'utilisation de find est simple:
find . -maxdepth 1 -type f
find . -type f
find /some/directory -type f
$ find . -type f -print
Chaque fichier sera sur sa propre ligne. Vous devez être dans le répertoire que vous souhaitez rechercher.