Apache ANT: Dateien umbenennen bzw. Protokoll erstellen

d2wap

Erfahrenes Mitglied
Hallo zusammen,

ich habe mich mit Apache ANT schon etwas eingearbeitet und ein paar Propertys geschrieben.
Doch nun sitze ich vor einem kleinen Problem....

Die Aufgabe:
Ich habe einen Server (Linux) der zwischen Groß- und Kleinschreibung unterscheidet. Standardmäßig gibt es Dokumente, deren Suffix GROß geschrieben sein muss (.PDF).

Ich habe ein Script geschrieben, welches bereits so ausschaut:

Code:
	<property name="SIDAName" value="1234e.pdf" />
    
    
    <target name="foo">
        <!-- Using Javascript functions to convert the string -->
        <script language="javascript"> <![CDATA[


            lowercaseValue = DateiXML.getProperty("SIDAName");
            ch = lowercaseValue.substring(5);
            rest = lowercaseValue.substring(0,5);
            up = ch.toUpperCase();
            uppercaseValue = rest + up;
		  
		  SIDANamealt = rest + ch;

            
            DateiXML.setProperty("SIDAName",uppercaseValue);
		  DateiXML.setProperty("suffix",ch);
		  DateiXML.setProperty("suffixg",up);
		  DateiXML.setProperty("prefix",rest);
		  DateiXML.setProperty("SIDANamealt",SIDANamealt);

        ]]> </script>
	   
	   <echo>prefix=   ${prefix}</echo>
	   <echo>suffix=   ${suffix} wird umgewandelt in ${suffixg}</echo>
        <echo>Ergebnis= ${SIDAName}</echo>
	   <echo>alte Datei (${SIDANamealt}) in neuen Datei (${SIDAName}) umbenennen per Rename-Kommando >> fertig!</echo>

    </target>

Funktioniert 1a - doch wie kann ich Dateien aus einem Verzeichnis selektieren und der Ausgabe dann sagen, dass sie die betroffenen Dateien kopieren soll und in ein Unterverzeichnix bewegen soll...

Danke :)
 
Zuletzt bearbeitet:
Es ist nicht so, dass ich mir das Apache ANT Manual nicht durchgeschaut hätte...
Es ist vielmehr so, dass ich die Befehle wie Move, Copy und Mapper kenne, doch ich kann sie leider nicht anwenden mit meiner Anforderung.

Optimal wäre es das von mir verwendete property "SIDAName" einen Wert annehmen muss, der jeder Datei in einem Verzeichnis entspricht und dann geschaut wird ob die Endung Lowercase ist, und wenn ja, die Datei in ein Unterverzeichnis mit der UPPERCASE ENDUNG kopiert.

Das hab ich noch nicht so ganz verstanden...
Ich kann zwar einen File List Selector basteln, doch dann komm ich da nimmer ganz weiter mit Wertübergabe und dergleichen.
 
Ok. Hat sich erledigt.
Ich sah den Wald vor lauter Bäumen nicht!

Ich hab EWIG lange an Extensions und JavaScript zur Ersetzung festgehalten, da es auch Buchstaben im Prefix klein waren und KLEIN bleiben sollten.
Doch es gibt ganz einfache Methoden das zu realisieren...
*Kopf gegen tisch hau...

An meinen Vorposter Thomas Darimont: Sorry, Links waren mehr als korrekt. Mein Fehler.

Hab es nun so gelöst:
Code:
		 <move todir="pdf" overwrite="true">
			<fileset dir="pdf" />
				<mapper type="glob"
					from="*.pdf"
					to="*.PDF" 
				/>
		</move>
 

Neue Beiträge

Zurück