From owner-freebsd-questions@FreeBSD.ORG Tue Jun 15 09:00:55 2010 Return-Path: Delivered-To: questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 36752106566C for ; Tue, 15 Jun 2010 09:00:55 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (gate6.infracaninophile.co.uk [IPv6:2001:8b0:151:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id 996678FC1F for ; Tue, 15 Jun 2010 09:00:54 +0000 (UTC) Received: from seedling.black-earth.co.uk (seedling.black-earth.co.uk [81.187.76.163]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.4/8.14.4) with ESMTP id o5F90gqo011875 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 15 Jun 2010 10:00:42 +0100 (BST) (envelope-from m.seaman@infracaninophile.co.uk) Message-ID: <4C17413A.2000807@infracaninophile.co.uk> Date: Tue, 15 Jun 2010 10:00:42 +0100 From: Matthew Seaman Organization: Infracaninophile User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: Aiza References: <4C173909.1050101@comclark.com> In-Reply-To: <4C173909.1050101@comclark.com> X-Enigmail-Version: 1.0.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Virus-Scanned: clamav-milter 0.96.1 at lucid-nonsense.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=1.6 required=5.0 tests=BAYES_50,DKIM_ADSP_ALL, SPF_FAIL autolearn=no version=3.3.1 X-Spam-Level: * X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on lucid-nonsense.infracaninophile.co.uk Cc: "questions@freebsd.org" Subject: Re: * wildcard in.sh script X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jun 2010 09:00:55 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 15/06/2010 09:25:45, Aiza wrote: > I have a directory with files in it. The first 3 letters of the file > names is the group prefix. I'm trying to write a script to accept the 3 > letter of the group followed by a * to mean its a prefix lookup. But > when I run it I get a message "NO match" that is not issued by the > script. Its like * is not allowed as input. > > Looking for sample .sh code for handling this standard type of lookup or > some online tutorial that has sample code for bourne shell programming. It would be helpful if you could show us some code, so we can tell exactly what you're trying to do. It sounds like your problem is you'ld like to supply a globbing pattern as an argument to your script, and then apply it within the script. So you'ld like to call the script something like this: $ myscript.sh -p globpattern filename.... The trick there would be to enclose globpattern in "quote marks", which will cause it to be passed literally into the script, rather than your interactive shell attempting to expand the pattern before starting the script and passing the arguments to it. (That's a classic way of getting a "No match" error message which seems to come from a program that couldn't have generated it) Note that it's not just the shell that can do globbing expansions -- find(1), pkg_info(1) are two examples I can think of immediately. These glob-pattern command line arguments similarly need quoting to protect them from the shell. Cheers, Matthew - -- Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate JID: matthew@infracaninophile.co.uk Kent, CT11 9PW -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.14 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwXQToACgkQ8Mjk52CukIxOrACggdei0bi8k13jyOg3tGQXyKp3 yFgAnjPJHivqt4VqM84UnGWqpFA/QQnR =FwzT -----END PGP SIGNATURE-----