I stand corrected ;)

Now can anyone help me get both feet out of my mouth :)

Anderson, Rob (Global Trade) wrote:
Not in this case. The shell does not need to expand the asterisk for the
find command to work. In fact, the shell can often times cause an error
when running the find command because it expands the asterisk when it
should not.

For example:

$ touch something.txt antherthing.txt yetanother.txt
$ find ./ -name *.txt
find: paths must precede expression
Usage: find [path...] [expression]

This error occurs because the shell will expand the asterisk and pass in
the three .txt files as args to find.

Now try this:

$ rm *.txt # be carefull to run this in some temp dir
$ mkdir newdir
$ touch newdir/something.txt newdir/anotherthing.txt
newdir/yetanother.txt
$ find ./ -name *.txt
./newdir/something.txt
./newdir/anotherthing.txt
./newdir/yetanother.txt

It works as expected because the shell does not expand the asterisk.

Anyway, I agree that you are better off doing this with a fileset in
Ant, since it will be a cross platform solution.

-Rob A



-----Original Message-----
From: Scot P. Floess [mailto:[EMAIL PROTECTED] Sent: Monday, May 08, 2006 10:26 AM
To: Ant Users List
Subject: Re: Unix commads behaving different in Ant task

That won't work as a shell expands the asterisk....

Anderson, Rob (Global Trade) wrote:
Your usage of the find command is incorrect. To find all
the jars in
./myDir you would run the following:

Find ./myDir -name *.jar

You should change the arg line to:

<arg line="$basedir}/myDir -name *.jar"/>

-Rob A

-----Original Message-----
From: Venkat Kotu [mailto:[EMAIL PROTECTED]
Sent: Friday, May 05, 2006 11:42 AM
To: user@ant.apache.org
Subject: Unix commads behaving different in Ant task

Hi,

I have a situation where in I need to find all the .jar
files in a
directory and write it to a temp file.

The command from the prompt is : find myDir/*.jar and it lists all the .jar files from myDir directory.

The ant target defined for the purpose is:

<target name="list.jars">

<exec os="unix" executable="find" outputproperty="temp.txt">

                        <arg line="$basedir}/myDir/*.jar"/>

            </exec>

 </target>

This does not return any thing.

What I am doing wrong?

Thanks

Venkat Kotu



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED] For
additional
commands, e-mail: [EMAIL PROTECTED]


--
Scot P. Floess
27 Lake Royale
Louisburg, NC  27549

252-478-8087 (Home)
919-754-4592 (Work)

Chief Architect JPlate  http://sourceforge.net/projects/jplate
Chief Architect JavaPIM http://sourceforge.net/projects/javapim


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



--
Scot P. Floess
27 Lake Royale
Louisburg, NC  27549

252-478-8087 (Home)
919-754-4592 (Work)

Chief Architect JPlate  http://sourceforge.net/projects/jplate
Chief Architect JavaPIM http://sourceforge.net/projects/javapim

Reply via email to