Knifflige Batch Aufgabe

2Antworten
  1. #1
    Avatar von telecaster95
    telecaster95 ist offline
    Themen Starter

    Title
    Benutzer
    seit
    11.04.2011
    Ort
    /home/tele
    Beiträge
    1.617

    Standard Knifflige Batch Aufgabe

    Hallo,

    ich habe eine Batchaufgabe bekommen mit der ich leider nicht weiterkomme.
    Ziel ist das erstellen eines Batch-Skripts welches die Dateinamen von zwei beliebigen MS-Word Dateien in einem Ordner tauscht (z.B. test1.doc, test2.doc wird zu test2.doc, test1.doc). Sowohl die Batch-Datei als auch die MS-Word Dateien sollen sich im selben Ordner befinden.
    • a)Die Namen der Dateien werden bei Aufruf des Skriptes mit übergeben.
    • b)Wenn eine der beiden Dateien, die angegeben werden nicht existiert, muss eine Fehlermeldung erscheinen.
    • c)Vor dem Tauschvorgang soll abgefragt werden, ob wirklich die Dateinamen getauscht werden soll. Wenn nicht getauscht werden soll, soll der Vorgang abgebrochen werden, und eine entsprechende Meldung erscheinen.
    • d)Wenn der Tauschvorgang erfolgreich abgeschlossen wurde, soll eine Meldung erscheinen.

    Meine Lösung funktioniert leider nicht soooo richtig:
    Code:
    @echo off
    set /P datei1= Geben sie den Namen der ersten Datei an:
    set /p datei2= Geben sie den Namen der zweiten Datei an:
    ren %datei1% %datei2%
    ren %datei2% %datei1%
    pause
    Und noch etwas: Wie versteht ihr Punkt a) ?
    Soll dies Benutzerdefiniert oder automatisiert geschehen?

    Ich hoffe ihr könnt mir etwas unter die Arme greifen

  2. #2
    Avatar von Spyx
    Spyx ist offline

    Title
    Moderator
    seit
    21.08.2006
    Beiträge
    9.155

    Standard

    Warum muss man dafür denn unbedingt Batch nehmen? Das ist keine schöne Skriptsprache. Ein kleines Python-Skript wäre da wesentlich schöner (und schneller geschrieben).

    zu a)
    https://www.microsoft.com/resources/...s/percent.mspx

    Bei deiner Lösung überschreibst du eine Datei (bzw. das Umbenennen wird fehlschlagen). Du musst noch einen temporären Dateinamen anlegen. Hier mal ein kleiner Codeschnipsel zur Erklärung:
    Code:
    // Variablen setzen
    a = 5
    b = 7
    c = 9
    d = 11
    // Dein Tauschversuch
    a = b
    b = a
    // Dein Ergebnis
    print(a) // 7
    print(b) // 7
    // Die richtige Lösung
    tmp = c
    c = d
    d = temp
    // Das gewünschte Ergebnis
    print(c) // 11
    print(d) // 9

  3. #3
    Avatar von telecaster95
    telecaster95 ist offline
    Themen Starter

    Title
    Benutzer
    seit
    11.04.2011
    Ort
    /home/tele
    Beiträge
    1.617

    Standard

    Hi,

    natürlich ist Batch dafür nicht sehr elegant, aber leider ein muss.
    Wir sollen zeigen was alles mit Batch möglich ist.

    Danke für dein Beispiel!

Ähnliche Themen

  1. WinXP Batch

    Von Krizzie98 im Forum Anwendersoftware
    Antworten: 1
    Letzter Beitrag: 29.11.2011, 19:00
  2. Batch

    Von Tom93 im Forum Off-Topic
    Antworten: 2
    Letzter Beitrag: 27.10.2010, 15:44
  3. Suche Hilfe+ Tools für interessante Aufgabe!!

    Von Robert_merl im Forum Anwendersoftware
    Antworten: 1
    Letzter Beitrag: 18.10.2007, 13:05
  4. Batch Datei

    Von Fabi im Forum Anwendersoftware
    Antworten: 2
    Letzter Beitrag: 12.07.2007, 14:55
Diese Seite benutzt Cookies Durch die weitere Nutzung der Seite stimmen Sie der Verwendung von Cookies zu. Infos zum Datenschutz