Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

If exist Order goto





Frage

Hi @ all ich hab da ein Problem ich will in meiner Batch abfragen ob der Ordner XY existiert. Wenn er vorhanden ist sollte er doch zum Spring puntk gehen. macht er aber bei mir nicht was kann ich machen ?? Hier meine Batch: @echo cd Temp if exist "test\*.*" goto loeschen echo konnte nicht gelöscht werden & goto Abbruch pause :loeschen del /f /s /q test rmdir /s /q test pause :Abbruch pause exit

Antwort 1 von Arno_Nym

Zitat:
if exist "test\*.*"

Überleg nochmal: Wie heißt der Ordner?
Heißt der "*.*" oder doch eher "test" ? ;o)

Arno

Antwort 2 von nixwisser

er heist test aber ich hab schon im internet nachgeschaubt ob es eine Lösung für mein Problem gibt und dort haben sie gemeint das ich einfach mal mit test/*.* versuchen soll aber das funktioniert auch nicht / genau wie auch test/Nul nicht funktioniert

Antwort 3 von Arno_Nym

Hmm, übrigens:
Warum vor dem RMDIR noch ein DEL? Ist doch unnötig.

Arno

Antwort 4 von nixwisser

ne solange noch dateien im Ordner vorhanden sind kann ich nicht das ganze verzeichniss löschen ^^ aber das war ja auch nicht mein Problem ^^ meine sorge liegt mit diesem if exist test goto loeschen gits da nicht irgendwie einen ausweg

Antwort 5 von Arno_Nym

Unter NT/200x/XP funktioniert

if exist Verzeichnis goto ...


oder mit vollst. Pfadangabe

if exist X:\Verzeichnis\Unterverzeichnis goto ...


Mit *.* geht gar nichts und \NUL ist unnötig (war nur bei DOS/Win9x so)

Achte bei der Zeile ohne vollst. Pfad darauf, daß du auf dem richtigen Laufwerk bist.

Arno

Antwort 6 von nixwisser

Vielleicht kleine Anmerkung könntenoch wichtig sein diese batch sollte auf eine barcode scanner funktionieren und das betriebssystem von diesem gerät ist Windows CE 4.2

Antwort 7 von Arno_Nym

Zitat:
ne solange noch dateien im Ordner vorhanden sind kann ich nicht das ganze verzeichniss löschen

Wer hat dir das nun wieder geflüstert? Der gleiche Typ wie der mit dem "*.*" zur Verzeichnisabfrage?

rd/s/q X:\Verzeichnis


putz alles weg, was nicht gelockt ist (Dateien UND Verzeichnisse).

Arno

Antwort 8 von nixwisser

aha kk thx für die Info werde noch in meine batch einbauen

Antwort 9 von Arno_Nym

Ah, grad erst gelesen: Windows CE 4.2

Da bin ich mir natürlich nicht mehr ganz sicher. Ging immer von XP oder so aus.

Mal sehen, ob ich zu CE was finde...

Arno

Antwort 10 von Arno_Nym

Also in der CE 4.2 Dokumentation ist der RMDIR bzw. RD Befehl genauso beschrieben wie bei WinXP (sollte mit dem Schalter /s also inclusive Unterverzeichnissen/Dateien alles löschen, Schalter /q verhindert die Abfragen).

Der IF EXIST Befehl sollte eigentlich auch funktionieren. Im Zweifelsfall die Variante mit dem NUL probieren (die funktionierte früher bei DOS/Win9x und in XP immer noch).

if exist Verzeichnis\nul


Ob das bei CE nun genauso geht, kann ich in Ermangelung einer Testmöglichkeit nicht sagen.

Warum willst du eigentlich vorher abfragen, ob der Ordner existiert?
Lösch doch einfach "drauflos". Wenn er nicht da ist, dann passiertt ja nix weiter (außer einer Meldungszeile "...kann nicht finden..."). Stört ja keinen.

Arno

Antwort 11 von nixwisser

erstmal Thx für deine Hilfe :P

Ich habe halt Ziele von meinem Chef bekommen und die muss ich halt einhalten in dem ich halt mi if abfragen muss ob der ordner existiert

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: