This is the mail archive of the
mailing list for the Cygwin project.
Re: find / without traversing /proc
- From: Andrew Schulman <schulman dot andrew at epa dot gov>
- To: cygwin at cygwin dot com
- Date: Thu, 27 Apr 2017 08:29:28 -0400
- Subject: Re: find / without traversing /proc
- Authentication-results: sourceware.org; auth=none
- References: <380-22017442784921354@M2W161.mail2web.com> <CAKw7uVix05wZvX=in08fjvNWwZb_DUYmYbeTn5XXOBdedNd5DQ@mail.gmail.com>
> On 27 April 2017 at 10:49, wrote:
> > The command "find /" takes forever, if it completes at all, because of the
> > need to traverse the induced directory /proc. Is this directory often
> > needed by users? Can it be skipped by setting up "export CYGWIN=something",
> > or even by default, with the requirement on the user to induce it if needed?
> > There seems to be no switch to the command find that would easily allow
> > "but not this subdirectory": if there was, I wouldn't be asking. Quite a
> > lot of surfing led me to
> > $ find / \( -wholename /proc -o -wholename /dev \) -prune -o -print
> > which is really heavyweight syntax for a simple requirement. I am pretty
> > certain it leads to the behaviour required "do not traverse" though various
> > posters seem to think it just leads to "traverse but do not report" saving
> > almost nothing.
> > Assuming the syntax is correct, I have not been able to incorporate any
> > qualifiers such as -type d or -type f or -type l. Any ideas where to slot
> > these so that they work?
> Doesn't the -xdev switch help with this?
find / -xdev ...
will do it, at the cost of excluding other mounted file systems too. So
depending on your search you might need e.g.
find / /cygdrive/c -xdev ...
Then again excluding /cygdrive/* might be what you want.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple