X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Mon, 8 Oct 2007 23:25:48 -0700 From: Gary Johnson To: cygwin AT cygwin DOT com Subject: Re: -exec on find(1) broken Message-ID: <20071009062547.GA19172@suncomp1.spk.agilent.com> Mail-Followup-To: cygwin AT cygwin DOT com References: <470B1B1B DOT 2060404 AT columbus DOT rr DOT com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <470B1B1B.2060404@columbus.rr.com> User-Agent: Mutt/1.5.16 (2007-06-09) X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 2007-10-09, Paul McFerrin wrote: > I think I'm going nuts. What am I doing wrong? Can't seem to get -exec to > work. > > /i/mp3.$ find . -type f -mtime +18 -exec /bin/echo \{\;\} | more > find: missing argument to `-exec' > /i/mp3.$ find . -type f -mtime +18 -exec /bin/echo \{\} | more find: > missing argument to `-exec' > /i/mp3.$ find . -type f -mtime +18 -exec /bin/echo '\;' | more > find: missing argument to `-exec' > /i/mp3.$ find . -type f -mtime +18 -exec /bin/echo \{;\} | more > find: missing argument to `-exec' > /i/mp3.$ find . -type f -mtime +18 -exec echo '\;' | more > find: missing argument to `-exec' > > There is NO missing argument to -exec. What gives? Is it really broken or > do I not understand the manual page correctly? You're putting too many quotes around the semicolon. Use \; or ';' but not both. For example, find . -type f -mtime +18 -exec /bin/echo \; | more If you want to echo the name of each file found, use {} like this: find . -type f -mtime +18 -exec /bin/echo {} \; | more However, if that's all you want to do, the -exec isn't necessary--just use -print: find . -type f -mtime +18 -print | more In modern implementations of find, such as Cygwin's, the -print usually isn't necessary either, so you could get by with just this: find . -type f -mtime +18 | more Also, please don't start new threads by replying to other posts--it messes up threading. Send mail directly to the list instead. Regards, Gary -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/