find returns unusable result
Gary Kline
kline at tao.thought.org
Fri Mar 2 22:40:53 UTC 2007
On Wed, Feb 28, 2007 at 03:38:24PM -0800, Bill Campbell wrote:
> On Wed, Feb 28, 2007, Vince wrote:
> >Josh Tolbert wrote:
> >> On Wed, Feb 28, 2007 at 05:12:58PM -0600, Paul Schmehl wrote:
> >>> I'd like to cron a process that looks at a certain folder every day and
> >>> changes the perms on a directory if they aren't what I want.
> >>> Unfortunately, the people creating the folders are Windows folks using
> >>> WinSCP, and so they create folders with spaces in them. (E.g. Day 1, Day
> >>> 2, etc.)
> >>>
> >>> I thought I could just do this:
> >>> chmod 755 `find /path/to/dirs -type d`
> >>>
> >>> but find returns a directory name of Day, Day, Day, which (obviously)
> >>> doesn't work.
> >>>
> >>> >From the cli, find returns the actual directory name.
> >>>
> >>> How can I get find to return the dirs correctly in a script? Or is there
> >>> some other way to do this that would work?
> >>>
> >>> Paul Schmehl (pauls at utdallas.edu)
> >>
> >> find /path/to/dirs -type d -print0 | xargs -0 chmod 755
> >>
> >or just
> >find /path/to/dirs -type d -exec chmod 755 {} \;
> >should do it.
>
> While that works, the -print0 | xargs -0 is far more efficient as it isn't
> exec'ing a process for every match. This may not be important for a few
> files or directories, but can make a significant difference when processing
> thousands of entries.
I don't mean to steal this thread, but it might help to know if
egrep -[xyz] bar or other things might be joined in the " | xargs"
part of the pipeline. Lots of times I'll want a find search to
print0 filename and egrep, say, -3 strings and search for
substrings nearby. The greps will recurse across many dirs with
scores of files so I want to search to be efficient. In other
words, how flexible is xargs?
gary
>
> Bill
> --
> INTERNET: bill at Celestial.COM Bill Campbell; Celestial Software LLC
> URL: http://www.celestial.com/ PO Box 820; 6641 E. Mercer Way
> FAX: (206) 232-9186 Mercer Island, WA 98040-0820; (206) 236-1676
>
> When I hear a man applauded by the mob I always feel a pang of pity
> for him. All he has to do to be hissed is to live long enough.
> -- H.L. Mencken, ``Minority Report''
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
--
Gary Kline kline at thought.org www.thought.org Public Service Unix
More information about the freebsd-questions
mailing list