Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 Oct 1996 19:35:49 +0200 (MET DST)
From:      Robert Eckardt <roberte@mep.ruhr-uni-bochum.de>
To:        hmmm@alaska.net (hmmm)
Cc:        questions@freebsd.org
Subject:   Re: find
Message-ID:  <199610131735.TAA06103@gluon.mep.ruhr-uni-bochum.de>
In-Reply-To: <Pine.BSF.3.95.961013161932.617A-100000@hmmm> from hmmm at "13. Oct. 96 16:22:50"

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> ok - as usual, i'm part right, part wrong.
> 
> here's the scoop after testing further suggestions ...
> 
> oh - and his is with SH, i want to get good with it before
> i move on to better shells ....
> 
> the quotes help, but it STILL works different
> in different directories ???

I don't see this.

`find / -name "ispell*"' gives the same results (as I see from your output
below) in either directory.

The fact that `find / -name ispell*' works differently can be explained
by the fact that sh expands `ispell*' to `ispell.1.gz' when you are in
/usr/local/man/man1, but cannot be expanded, because there is nothing to
match, when you are in the one above.
Thus, sh passes `ispell*' unmodified to find *as if* it was quoted.
(Other shells may give you an error.)

As opposed to DOS, in Unix the shell expands wildcards unless they are
quoted *before* passing them as arguments to the program.

I hope this explains the behaviour you see to you.

Robert

> ..........................................................
> 
> cd /usr/local/man/man1
> 
> find / -name ispell
> /usr/local/bin/ispell
> 
> find / -name ispell*
> /usr/local/man/man1/ispell.1.gz
> /usr/local/man/cat1/ispell.1.gz
> 
> find / -name "ispell*"
> /dos/bsd/packages/all/ispell-3.1.2
> /usr/local/bin/ispell
> /usr/local/man/man1/ispell.1.gz
> /usr/local/man/cat1/ispell.1.gz
> /usr/local/man/man4/ispell.4.gz
> /usr/local/share/emacs/site-lisp/ispell.el
> /usr/local/share/emacs/site-lisp/ispell.elc
> /usr/packages/All/ispell-3.1.20.tgz
> /var/db/pkg/ispell-3.1.20
> 
> cd ..
> 
> find / -name ispell
> /usr/local/bin/ispell
> 
> find / -name ispell*
> /dos/bsd/packages/all/ispell-3.1.2
> /usr/local/bin/ispell
> /usr/local/man/man1/ispell.1.gz
> /usr/local/man/cat1/ispell.1.gz
> /usr/local/man/man4/ispell.4.gz
> /usr/local/share/emacs/site-lisp/ispell.el
> /usr/local/share/emacs/site-lisp/ispell.elc
> /usr/packages/All/ispell-3.1.20.tgz
> /var/db/pkg/ispell-3.1.20
> 
> find / -name "ispell*"
> /dos/bsd/packages/all/ispell-3.1.2
> /usr/local/bin/ispell
> /usr/local/man/man1/ispell.1.gz
> /usr/local/man/cat1/ispell.1.gz
> /usr/local/man/man4/ispell.4.gz
> /usr/local/share/emacs/site-lisp/ispell.el
> /usr/local/share/emacs/site-lisp/ispell.elc
> /usr/packages/All/ispell-3.1.20.tgz
> /var/db/pkg/ispell-3.1.20

-- 
Robert Eckardt                                                     (
    Ruhr-Universitaet Bochum, Inst.f.Theor.Physik, NB6/169          )
    Universitaetsstrasse 150,   D-44780 Bochum,    Germany     ----X---8----
    Telefon: +49 234 700-3709,   Telefax: +49 234 7094-574             8
    E-Mail:  RobertE@MEP.Ruhr-Uni-Bochum.de                    --------8----
    URL:  http://WWW.MEP.Ruhr-Uni-Bochum.de/~roberte
>>> To be successful one needs friends,                                  <<<
>>> To be very successful one needs enemies.                             <<<



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