ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Lowery <jef...@mavericklabel.com>
Subject Re: Trying to execute 'grep'
Date Thu, 16 Aug 2012 16:58:38 GMT
True, I could execute a simple groovy script using java.util.regex via the ant <exec>
task.  I was able to get the 'sh -c' option working, as suggested previously, but I'll keep
this in mind.

-- Jeff



On Aug 16, 2012, at 7:55 AM, Martin Gainty wrote:

> 
> Good Advice from the Employees at Lexmark!
> 
> I found java.util.regex package is quite useful for regular expression matching ..here
is a simple example you can use
> java.util.regex.Pattern p = java.util.regex.Pattern.compile("a*b");
> java.util.regex.Matcher m = p.matcher("aaaaab");
> boolean b = m.matches();Information available at
> http://docs.oracle.com/javase/6/docs/api/
> 
> if brevity is your strength you may consider combining java.util.Pattern and Matcher
in a one line statement such as
> boolean b = Pattern.matches("a*b", "aaaaab");Then create your custom taskdef with a Class
which extends org.apache.tools.ant.Task
> http://ant.apache.org/manual/develop.html
> 
> HTH
> Martin 
> ______________________________________________ 
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
> 
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so
bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer
Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und
entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails
koennen wir keine Haftung fuer den Inhalt uebernehmen.
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire
prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe
quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information
seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les
email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune
responsabilité pour le contenu fourni.
> 
> 
>> Date: Thu, 16 Aug 2012 07:51:39 -0400
>> Subject: Re: Trying to execute 'grep'
>> From: hputman@lexmark.com
>> To: user@ant.apache.org
>> 
>> Jeff,
>> You might be able to do this natively within ant
>> 
>> This is how it could work for a single file:
>> <target name="test-failure-check">
>>  <local name="error.found"/>
>>  <loadfile property="error.found"
>> srcfile="${home.dir}/runtime/logs/test-results/file.xml">
>> <filterchain>
>> <linecontainsregexp>
>> <regexp pattern="failure"/>
>> </linecontainsregexp>
>> </filterchain>
>>  </loadfile>
>>  <fail message="Unit test failure(s)" unless="error.found"/>
>> </target>
>> 
>> Doing this this with *.xml is left as an exercise for the reader :-)
>> 
>> Harold
>> 
>> On Wed, Aug 15, 2012 at 6:56 PM, Jeff Lowery <jeff.l@mavericklabel.com>wrote:
>> 
>>> Have the following target:
>>> 
>>> <target name="test-failure-check">
>>>                <exec executable="grep">
>>>                        <arg line="failure
>>> ${home.dir}/runtime/logs/test-results/*.xml" />
>>>                        <redirector outputproperty="grep.out" />
>>>                </exec>
>>>                <echo message="grep.out='${grep.out}'" />
>>> 
>>>                <fail message="Unit test failure(s)">
>>>                        <condition>
>>>                                <not>
>>>                                        <equals arg1="${grep.out}" arg2=""
>>> />
>>>                                </not>
>>>                        </condition>
>>>                </fail>
>>> </target>
>>> 
>>> and getting the following echo:
>>> 
>>> [echo] grep.out='grep:
>>> /Users/jeff.l/Documents/workspace/homedir/runtime/logs/test-results/*.xml:
>>> No such file or directory'
>>> 
>>> yet if I execute "grep failure
>>> /Users/jeff.l/Documents/workspace/homedir/runtime/logs/test-results/*.xml",
>>> from the command line, I get results back.
>>> 
>>> 
>>> -- Jeff
>>> 
>>> 
>>> 
>>> 
>> 
>> 
>> -- 
>> Harold PUTMAN
>> Web Technology Specialist
>> *Lexmark International, Inc. <http://www.lexmark.com>*
>> 740 W New Circle Rd.
>> Lexington, KY 40550
>> +1(859) 232-2839
>> hputman@lexmark.com
> 		 	   		  


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message