Umbenennung eines Verzeichnis - Wenn = Dann

Noch gar nicht im Bett, Gast? Schön, dass Du hereinschaust! Einen angenehmen Aufenthalt wünscht das CompiWare-Team.
  • Guten Tag,

    ich suche eine Möglichkeit eine BAT oder CMD Datei, was folgendes macht.


    Wenn in Verzeichnis xyz eine Ordner mit neu vorhanden ist diesen umbenennen in neu.org

    Ist aber in dem Verzeichnis xyz der Ordner neu.org diesen in neu umbenennen.


    Am besten wäre es noch mit ner Meldung neu wurde in neu.org, b.z.w. neu.org wurde in neu umbenannt.


    Hat da einer was auf die schnelle.

  • Zur hilfreichsten Antwort springen
  • probiers mal damit:



    echo off

    if exist f:\test GOTO sprung1

    echo nicht vorhanden

    GOTO ende


    :sprung1

    ren f:\test test1

    echo umbenannt


    :ende



    beInhaltet so natürlich kein Durchsuchen der Unterverzeichnisse



    Edit: musst du natürlich eine Batch-Datei draus machen und alles grün markierte anpassen

  • Das klingt schon mal gut, aber was ist wenn die andere Datei vorhanden ist.


    Weil Dein Script klappt ja nur in eine Richtung. es muss aber in beide Richtungen klappen


    Also

    ist

    Test 1 vorhanden umbenennen in Test 2

    ist aber

    Test 2 vorhanden diese dann in Test 1 umbenennen,

    und das jeweils mit der passende Ausgabe

    • Hilfreichste Antwort

    NightHawk13


    Ich habe Dein Script in eine Wenn-Dann-Funktion geändert:


    echo off


    if exist B:\test\neu (


    RENAME B:\test\neu neu.org


    echo umbenannt neu.org


    ) else (


    if exist B:\test\neu.org (


    RENAME B:\test\neu.org neu


    echo umbenannt neu


    )


    )


    pause


    John Sinclair


    Ist es das, was Du wolltest?


    Das Umbenennen scheint in Windows auf einen Ordner mit einem Unterordner beschränkt zu sein.

  • ....es muss aber in beide Richtungen klappen....

    Ok, das kam bei mir nicht ganz an :D


    Die modifizierte Variante von arcelk sollte so funktionieren, könnte aber Fehler ausspucken, wenn keines der beiden Verzeichnisse vorhanden ist.

    Da müsste man den Hintergrund kennen, um es evtl noch zu verfeinern.

  • Die modifizierte Variante von arcelk sollte so funktionieren, könnte aber Fehler ausspucken, wenn keines der beiden Verzeichnisse vorhanden ist.

    Da müsste man den Hintergrund kennen, um es evtl noch zu verfeinern.

    Du hast recht. Wenn der spezifische Ordner nicht vorhanden ist, kommt als Ausgabe nur "echo off".


    John Sinclair Ich habe noch die Meldung "nicht vorhanden" hinzugefügt.


    echo off


    if exist B:\test\neu (


    RENAME B:\test\neu neu.org


    echo umbenannt neu.org


    ) else (


    if exist B:\test\neu.org (


    RENAME B:\test\neu.org neu


    echo umbenannt neu


    ) else (


    echo nicht vorhanden


    )


    )


    pause

  • da es so viel Spaß gemacht hat hier nochmal eine Alternative mit meinem Ansatz:



    @echo off


    if exist f:\test GOTO sprung1

    if exist f:\test1 GOTO sprung2

    echo nicht vorhanden

    pause

    GOTO ende


    :sprung1

    ren f:\test test1

    echo test umbenannt in test1

    pause

    GOTO ende


    :sprung2

    ren f:\test1 test

    echo test1 umbenannt in test

    pause


    :ende



    Finde hier die Sprungpunkte übersichtlicher, grad wenn mans nochmal modifizieren muss ;)



    .....kommt als Ausgabe nur "echo off"....


    Habe eben selber gemerkt, dass wir anscheinend beide das @ davor vergessen haben :D

  • PoooMukkel

    Hat den Titel des Themas von „Um benennung eines Verzeichnis Wenn = dann“ zu „Umbenennung eines Verzeichnis - Wenn = Dann“ geändert.