× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Dennis,

I was testing the statement via direct entry into a QSH session. ie.
from the shell prompt.

Test recursive find:
cd /home/myuserid

find . -name \*.java -print
./GetInactiveCabinets.java
./testsub/GetInactiveCabinets.java
./testcmw.java


This worked:
find . \( ! -name . -prune \) -name \*.java -print
./GetInactiveCabinets.java
./testcmw.java

But this didn't
find . \( ! -name . -prune \) -name '\*.java' -print

Nor did this
find . \( ! -name . -prune \) -name \'*.java' -print

Just trying to understand why I don't have to quote the wildcard...

Charles

On Fri, May 14, 2010 at 10:48 AM, Dennis Lovelady <iseries@xxxxxxxxxxxx> wrote:
Not sure I quite understand, Charles.  (Sorry.)  Are you doing this via QSH
command or direct entry to the shell, or in a script or something else?

Can you provide an example that doesn't work for you, and I'll see if I can
determine what needs to be done to make it work?

Dennis Lovelady
http://www.linkedin.com/in/dennislovelady
--
Fear less, hope more,
eat less, chew more,
whine less, breathe more,
talk less, say more,
hate less, love more,
and all good things will be yours.
       -- Swedish proverb
The thing is, when I quote the *.c...it doesn't find anything.  Leave
it unquoted and it does.

Is the shell seeing the \ as an escape charactor and thus the quotes
are not needed to prevent the shell from expanding the wildcard
perhaps?

What would I need if the pattern I'm actually looking for looks like
???? .fin.cis0000.staf.input01.????????.zip

Charles

On Fri, May 14, 2010 at 9:44 AM, Dennis Lovelady <iseries@xxxxxxxxxxxx>
wrote:
I forgot about prune.  I believe the below will work in most cases
(but do
read the next paragraph).  You are correct: the * in *.c would need
to be
escaped or enclosed in quotes.  It'll work if there's no *.c file in
the
current directory (the one from which the command is issued) but
that's
dicey.

The thing I don't like about -prune is that the documentation I've
seen is
sketchy and ambiguous.  So are the results.  For example, I would
expect
this to return a list of all files in the current directory:
   find . -prune
but it won't.  Likewise, this returns an empty list except the lone
dot:
   find . -name "*" -prune

Dennis Lovelady
http://www.linkedin.com/in/dennislovelady
--
"Some see the problem in every opportunity, some see the opportunity
in
every problem."
       -- Kevin Cowling

I found this message on the net....

cd to the directory in question so that you can use . in the find
command,
then, for example,
find . \( ! -name . -prune \) -name \*.c -print

It seems to work, but I don't understand why *.c doesn't need to be
quoted....

Also, it seems that this doesn't find recursively, but I'm not sure
if
the shell isn't processing the wildcard....
find /mypath/*.txt

I need a better understanding of how shells and unix type utilities
work! :)
Anybody know a good manual?

Thanks,
Charles




On Fri, May 14, 2010 at 8:44 AM, DrFranken <midrange@xxxxxxxxxxxx>
wrote:
Charles,

  Sadly there IS a switch however it's not supported by find in
PASE.
Worked through that myself just yesterday.

   - Larry
Dennis,

Is there a switch I'm not seeing to make find non-recursive?

Thanks,
Charles

On Thu, May 13, 2010 at 11:54 AM, Dennis
Lovelady<iseries@xxxxxxxxxxxx>  wrote:

What's the currently recommended way of purging IFS files by
date?

I found an old utility from Scott Klement, that comes really
close
to
perfect.  The only issue is it purges everything in a given
directory,
I'd like to be able to pass a wildcard file name.  I haven't
look
at
it in detail, but I suspect that modifying it to process file
name
wildcards would be non-trivial.  Then again, perhaps not if I
can
find
an good example of comparing a wild card value to another
string,
(regex perhaps? but might be overkill).

find /my_path -mtime ${PURGE_DAYS} -name "${WILDCARD_NAMES}" -
exec
rm {} \;

Dennis Lovelady
http://www.linkedin.com/in/dennislovelady
--
"Inanimate objects are classified scientifically into three
major
categories
- those that don't work, those that break down, and those that
get
lost."
        -- Russell Baker


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.