OVH Cloud OVH Cloud

commande find

5 réponses
Avatar
Jean-Marc Bourguet
Avant que je passe à quelque chose de plus lourd pour
résoudre le problème...

J'aimerais faire une commande find (et les particularismes
de GNU ne me gèneraient pas outre mesure, un "one liner" en
perl ou en python passerait aussi) qui me retourne
uniquement les noms dans un répertoire donné qui ne sont pas
des points de montage.

Merci

--
Jean-Marc
Site de usenet-fr: http://www.usenet-fr.news.eu.org

5 réponses

Avatar
Jacques L'helgoualc'h
Le 02-01-2006, Jean-Marc Bourguet a écrit :

Avant que je passe à quelque chose de plus lourd pour
résoudre le problème...

J'aimerais faire une commande find (et les particularismes
de GNU ne me gèneraient pas outre mesure, un "one liner" en
perl ou en python passerait aussi) qui me retourne
uniquement les noms dans un répertoire donné qui ne sont pas
des points de montage.


Awk, ça va aussi ?

find . -type d|awk 'BEGIN{while("mount"|getline){l[$3]++}}!l[$0]'

Merci


de rien,
--
Jacques L'helgoualc'h

Avatar
Jacques L'helgoualc'h
Le 02-01-2006, Jacques L'helgoualc'h a écrit :
[...]
find . -type d|awk 'BEGIN{while("mount"|getline){l[$3]++}}!l[$0]'


En fait, il vaut mieux « find /chemin/absolu »... Le cas avec des
espaces est laissé en exercice aux masochistes qui utilisent comme point
de montage "C:/Mes Documents".
--
Jacques L'helgoualc'h

Avatar
Laurent Wacrenier
Jean-Marc Bourguet écrit:
J'aimerais faire une commande find (et les particularismes
de GNU ne me gèneraient pas outre mesure, un "one liner" en
perl ou en python passerait aussi) qui me retourne
uniquement les noms dans un répertoire donné qui ne sont pas
des points de montage.


En perl :

perl -le '($a)=stat".";print$_ for grep{-d$_&&(stat(_))[0]==$a}<*>'

Avatar
Jean-Marc Bourguet
Jean-Marc Bourguet writes:

Avant que je passe à quelque chose de plus lourd pour
résoudre le problème...

J'aimerais faire une commande find (et les particularismes
de GNU ne me gèneraient pas outre mesure, un "one liner" en
perl ou en python passerait aussi) qui me retourne
uniquement les noms dans un répertoire donné qui ne sont pas
des points de montage.


Laurent Wacrenier <lwa@ teaser . fr> writes:

En perl :

perl -le '($a)=stat".";print$_ for grep{-d$_&&(stat(_))[0]==$a}<*>'


Pascal PETIT writes:
Je ne sais pas si je comprends bien la question mais pourquoi pas un
truc du style suivant qui s'appuie sur le fait que la racine d'une
partition a 2 comme numero d'inode :

# affiche les dossiers de / qui ne sont pas des partitions montées
find / -type d ! -inum 2 -maxdepth 1 -print


Merci à vous deux.

--
Jean-Marc
Site de usenet-fr: http://www.usenet-fr.news.eu.org

Avatar
Laurent Wacrenier
Pascal PETIT écrit:
Je ne sais pas si je comprends bien la question mais pourquoi pas un
truc du style suivant qui s'appuie sur le fait que la racine d'une
partition a 2 comme numero d'inode :


C'est pas toujours vrai.