Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Sep 2002 09:12:26 +0300
From:      Giorgos Keramidas <keramida@ceid.upatras.gr>
To:        Peter Leftwich <Hostmaster@Video2Video.Com>
Cc:        FreeBSD LIST <FreeBSD-Questions@FreeBSD.ORG>
Subject:   Re: find case-insensitive challenge
Message-ID:  <20020919061225.GE39149@hades.hell.gr>
In-Reply-To: <20020919013548.H83658-100000@earl-grey.cloud9.net>
References:  <20020919013548.H83658-100000@earl-grey.cloud9.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2002-09-19 01:38, Peter Leftwich <Hostmaster@Video2Video.Com> wrote:
> Tonight I surprised myself by running
> `find ~/Desktop/folder/ -name "*.jpg" -exec mv {} ~/Desktop/folderjpgs/ \;`

> But there were two issues -- I had to escape the semicolon with a "\" --
> does this ever cause problems for find command lines?

The `\' character makes sure that your shell doesn't intepret ';' in
the usual sense (as a command separator).

> Second, this found only *.jpg files and left behind *.JPG files so
> how do you make find be case-insensitive? -exec ThankYouScript.sh {} \;

Two ways.  a)  Use -iname instead of -name.

b) Use filename globbing, as in:

	find folder/ -name '*.[mM][pP]3'

The character classes [mm] and [pP] make sure that both variations of
each character are considered valid matches.  This is my preferred way
of matching files when I only want to ignore the case of one or two
characters.

-- 
Giorgos Keramidas <keramida@{ceid.upatras.gr,freebsd.org}>
FreeBSD 4.6-RELEASE #0: Wed Sep 18 23:08:01 EEST 2002

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020919061225.GE39149>