Montag, 14. Dezember 2015

WDDirSplit - kostenloses Zusatzprogramm zum Aufsplitten von Verzeichnisnamen


 

WDDirSplit - kostenloses Zusatzprogramm


 Es gibt von Zeit zu Zeit die Anforderung, aus dem Pfad der erkannten Datei einzelne Elemente herauszulesen und diese z. Bsp. zum Erzeugen eines Zielkopierpfades oder des Dateinamens zu verwenden.

Hierzu haben wir ein Zusatzprogramm verfügbar, das in Verbindung mit dem Plugin ".bat-Dateien ausführen" jedes einzelne Element eines Pfades ausliest und in einzelnen Variablen schreibt. Mit diesen Variablen kann man dann den neuen Dateipfad zusammenbauen.

    Beispiel eines Aufrufs:
    "C:\program files (x86)\WDDirSplit.exe" "C:\ein\pfad\der\aufgeteilt\werden\soll.txt" "C:\temp\steuerdatei.bat"
    Call "C:\temp\steuerdatei.bat"
    Del "C:\temp\steuerdatei.bat"
    
    Mit diesem Aufruf wird WDDirplit.exe angewiesen, die nachfolgende Angabe zwischen den \ aufzusplitten und in die Datei c:\temp\steuerdatei.bat zu schreiben. Diese wird dann aufgerufen, um die eben erzeugten Variablen in der aktuellen cmd verfügbar zu machen.
    Der automatisch erzeugte Inhalt der steuerdatei.bat würde dann so aussehen:
    rem How many components were found in path "C:\ein\pfad\der\\aufgeteilt\werden\soll.txt"
    SET WD_DP_COUNT=6
    rem WD_DP_1 has the first component ("ein"), WD_DP_2 the second...
    SET WD_DP_1=ein
    SET WD_DP_2=pfad
    SET WD_DP_3=der
    SET WD_DP_4=aufgeteilt
    SET WD_DP_5=werden
    SET WD_DP_5=soll.txt
    rem WD_DPR_1 has the last component ("soll.txt"), WD_DPR_2 the one before it..(R=Reversed)
    SET WD_DPR_1=soll.txt
    SET WD_DPR_2=werden
    SET WD_DPR_3=aufgeteilt
    SET WD_DPR_4=der
    SET WD_DPR_5=pfad
    SET WD_DPR_6=ein
    rem For conveniance: WD_DP_FIRST and WD_DP_LAST
    SET WD_DP_FIRST=ein
    SET WD_DP_LAST=soll.txt
    
    Hiermit lässt sich jetzt in einer .bat-Datei z. Bsp. ein xcopy-Befehl verwenden. Das Script kann also so aussehen, wenn die erkannte Datei "C:\ein\pfad\der\aufgeteilt\werden\soll.txt" (= Variable "%WD_FILE%") ist:
    rem lets split
    "C:\program files (x86)\WDDirSplit.exe" "%WD_FILE%" "C:\temp\steuerdatei.bat"
    
    rem call the temp bat file to get the created variables
    Call "C:\temp\steuerdatei.bat"
    Del "C:\temp\steuerdatei.bat"
    
    rem copy to target
    xcopy "%WD_FILE%" "c:\archiv\%WD_DP2%\%WD_DP4%\%WD_DP6%"
    
    Dieser Befehl würde die Datei soll.txt nach c:\archiv\pfad\aufgeteilt\soll.txt kopieren.


    Download der WDDirSplit.exe:
    http://www.watchdirectory.net/beta/WDDirSplit.zip