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.

    Einmal editiert, zuletzt von John Sinclair (5. Oktober 2019 um 18:46)

  • 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

    2 Mal editiert, zuletzt von NightHawk13 (5. Oktober 2019 um 19:32)

  • 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 6. Oktober 2019 um 15:43

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