Date: Wed, 28 Feb 2007 15:38:24 -0800 From: Bill Campbell <freebsd@celestial.com> To: freebsd-questions@freebsd.org Subject: Re: find returns unusable result Message-ID: <20070228233824.GA25235@ayn.mi.celestial.com> In-Reply-To: <45E6113A.2060500@unsane.co.uk> References: <D29D90080F802A4D1BBB3EDE@utd59514.utdallas.edu> <20070228231635.GB73748@just.puresimplicity.net> <45E6113A.2060500@unsane.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
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@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.
Bill
--
INTERNET: bill@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''
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070228233824.GA25235>
