Batch dateien verschieben !

Diskutiere Batch dateien verschieben ! im Programmierung Forum im Bereich Software Forum; Hallo Habe eine Batch z.b. Move /Y c:\test\*.* d:\back\ das geht auch ganz gut das problem ist nur wenn sich nichts in denn ordner befindet...
HighwayPatrol

HighwayPatrol

Threadstarter
Mitglied seit
17.07.2002
Beiträge
613
Hallo

Habe eine Batch z.b.

Move /Y c:\test\*.* d:\back\

das geht auch ganz gut das problem ist nur wenn sich nichts in denn ordner befindet

kommt eine fehler meldung:

die syntax für den dateinamen, verzeichnisnamen oder die datenträgerbezeichnung ist falsch


meine frage ist kann man das irgend wie abfangen oder geht es nicht !

mfg
 
R

Ronny

SPONSOREN
Mitglied seit
07.08.2004
Beiträge
12.311
Standort
Rheinland
...das problem ist nur wenn sich nichts in denn ordner befindet
Das kanst Du abfangen mit if exist....

In deinem Falle müsste das dann also lauten:

if exist c:\test\*.* Move /Y c:\test\*.* d:\back\.

Hier wird also die Ausführung des Befehls von der Existenz der zu verschiebenden Dateien abhängig gemacht, so dass bei Nichtvorhandensein auch keine Fehlermeldung ausgegeben werden dürfte.
 
HighwayPatrol

HighwayPatrol

Threadstarter
Mitglied seit
17.07.2002
Beiträge
613
Hallo
Habe versucht das ganze etwas schöner zu gestallten ,
doch leider geht es nicht so wie ich mir es vorgestellt habe ,
ich finde auch nicht denn fehler !

@echo off
:start

IF EXIST c:\test\*.* goto clear


echo =====================================
echo Datum: %date% Uhrzeit: %time:~0,8% Keine Daten Vorhanden ...
echo =====================================

pause
goto start

:clear

echo =====================================
echo Datum: %date% Uhrzeit: %time:~0,8% daten gefunden ...
move /Y c:\test\*.* d:\back\
echo =====================================

pause
goto start


mfg
 
S

seth

Mitglied seit
09.04.2005
Beiträge
43
gudn tach!

Originally posted by HighwayPatrol+09.05.2005, 21:43-->
QUOTE(HighwayPatrol @ 09.05.2005, 21:43)die syntax für den dateinamen, verzeichnisnamen oder die datenträgerbezeichnung ist falsch
meine frage ist kann man das irgend wie abfangen oder geht es nicht !
[/b]
ja: gib mal auf der kommandozeile "help if" ein und lies dir den kram zu errorlevel durch.
wenn move ordnungsgemaess ablaeuft, wird errorlevel 0 zurueckgegeben. wenn dein fehler auftritt, dann errorlevel 1.

<!--QuoteBegin-Ronny2
@09.05.2005, 23:01
Das kanst Du abfangen mit if exist....[...]
if exist c:\test\*.* Move /Y c:\test\*.* d:\back\.
auch ein leeres verzeichnis hat zwei eintraege (. und ..)

prost
seth
 
HighwayPatrol

HighwayPatrol

Threadstarter
Mitglied seit
17.07.2002
Beiträge
613
Lieben Gruss an Alle ! :inlove


@echo off
:start
IF EXIST c:\test\*.* goto clear
echo =====================================
echo Datum: %date% Uhrzeit: %time:~0,8% Keine Daten Vorhanden ...
echo =====================================
pause
goto start
:clear
echo =====================================
echo Datum: %date% Uhrzeit: %time:~0,8% daten gefunden ...
move /Y c:\test\*.* d:\back\
echo =====================================
pause
goto start


Hmmm Ich komme einfach da nicht weiter , Wenn kein Ordner da ist klapt das mit der batch , Sie springt zur anfang ( keine daten ) , So bald aber der Ordner da ist springt es nur noch zur (daten gefunden)

???? :verysad :verysad ????

Habe mir das so gedacht , Wenn in denn Ordner keine Daten da sind Springt es zum Anfag (keine daten) , Werden Daten gefunden Springt es zur clear (daten gefunden)

Aber Gedanken und Praxis ist ein Weiter Begriff

Gruss @all
 
S

seth

Mitglied seit
09.04.2005
Beiträge
43
gudn tach!

Originally posted by HighwayPatrol+10.05.2005, 20:39-->
QUOTE(HighwayPatrol @ 10.05.2005, 20:39)Wenn kein Ordner da ist klapt das mit der batch , Sie springt zur anfang ( keine daten ) , So bald aber der Ordner da ist springt es nur noch zur (daten gefunden)[/b]
hast du mein posting gelesen? ich zitiere mich mal selbst:
Originally posted by seth@10.05.2005, 20:14
Originally posted by Ronny2@09.05.2005, 23:01
Das kanst Du abfangen mit if exist....[...]
if exist c:\test\*.* Move /Y c:\test\*.* d:\back\.
auch ein leeres verzeichnis hat zwei eintraege (. und ..)
Originally posted by HighwayPatrol@10.05.2005, 20:39
Habe mir das so gedacht , Wenn in denn Ordner keine Daten da sind Springt es zum Anfag (keine daten) , Werden Daten gefunden Springt es zur clear (daten gefunden)
und dazu zitier ich mich auch noch mal:
<!--QuoteBegin-seth
@10.05.2005, 20:14
gib mal auf der kommandozeile "help if" ein und lies dir den kram zu errorlevel durch.
wenn move ordnungsgemaess ablaeuft, wird errorlevel 0 zurueckgegeben. wenn dein fehler auftritt, dann errorlevel 1.
falls davon etwas unklar sein sollte, nenne es bitte, dann kann ich versuchen es naeher zu erlaeutern.

prost
seth
 
HighwayPatrol

HighwayPatrol

Threadstarter
Mitglied seit
17.07.2002
Beiträge
613
Hallo seth !

Habe es mit Help if ,

Probiert doch leider weiss Ich nicht wie ich das machen soll

Also keine ahnung so gut bin ich auch nicht in Batch !

Ich hoffe das du mir mal hilfst :beten

oder meine Batch so änderst das es geht !


Lieben Gruss
 
S

seth

Mitglied seit
09.04.2005
Beiträge
43
gudn tach!

Originally posted by HighwayPatrol@10.05.2005, 23:41
Ich hoffe das du mir mal hilfst
oder meine Batch so änderst das es geht !
ok, dazu noch zuerst die frage: was genau stoert dich an der fehlermeldung?
wenn dich bloss stoert, dass, wenn keine datei im verzeichnis existiert, eine fehlermeldung kommt, kannst du diese einfach unterdruecken und alles funzt:
move c:\test\*.* d:\back\ 2>nul

wenn du moechtest, dass je nach dem ob das verzeichnis dateien enthaelt oder nicht, etwas anderes gemacht werden soll, dann kannst du den errorlevel abfragen, der von move nach ausfuehrung zurueckgegeben wird.
also z.b.:
Code:
@echo off
move c:\test\*.* d:\back\ 2>nul
if errorlevel 1 goto leer
if errorlevel 0 goto nichtleer
:leer
echo ei, das geht doch nedd!
goto exit
:nichtleer
echo.
echo yippieh, hat gefunzt!
:exit
mit move verschiebst du uebrigens auf diese weise keine unterverzeichnisse, d.h. es wird nicht geprueft, ob das verzeichnis leer ist, sondern bloss, ob sich keine _dateien_ darin befinden.

wenn du aber auch die unterverzeichnisse mitverschieben willst, wuerde ich einen ganz anderen (allgemeineren) weg vorschlagen:
Code:
@echo off
FOR /F "usebackq delims=?" %%i IN (`dir c:\test /b`) DO move "c:\test\%%i" d:\back
ueber eine google-suche nach "for /f" und "batch" solltest du zu seiten finden, die dir genauer erklaeren, wie for funktioniert.

prost
seth
 
M

-milon-

Mitglied seit
16.01.2003
Beiträge
348
Standort
Augsburg/Bayern
Grüß Gott,

um die Verwirrung noch ein wenig größer zu machen, gibts auch noch eine weitere Variante (ich deute sie nur an):

XCopy c:\a d:\a /diverse parameter
deltree c:\a
 
Thema:

Batch dateien verschieben !

Batch dateien verschieben ! - Ähnliche Themen

  • [Batch] Dateien in bestimmter Menge in noch nicht vorhandene Ordner verschieben

    [Batch] Dateien in bestimmter Menge in noch nicht vorhandene Ordner verschieben: Hallo ihr, ich hab da ein Problemfall den ich gerne mit einer Batch lösen wollen würde. Folgende Ausgangssituation: Ich habe einen Ordner mit...
  • Dateien verschieben mit Batch

    Dateien verschieben mit Batch: Guten Morgen zusammen, ich bin neu hier im Forum und auch ganz neu im o.g. Thema :unsure Vielleicht kann mir ja hier jemand helfen, ohne mich...
  • Umbenennen/Verschieben mit einer Batch-Datei

    Umbenennen/Verschieben mit einer Batch-Datei: Hallo an alle, ich habe ein kleines Problem: Folgende Ordnerstruktur: Main Andi/neu Bernd/neu Claudi/neu Dirk/neu In die "neu"-Ordner werden...
  • GELÖST Batch Datei um einzelne Dateien aus Verzeichnis zu verschieben

    GELÖST Batch Datei um einzelne Dateien aus Verzeichnis zu verschieben: Hallo zusammen Gibt es eine Möglichkeit einzelne Datien (z.B. mittels Batch) in ein neues Verzeichnis zu verschieben? Mein Problem/Idee Ich habe...
  • Batch Datei zum verschieben einer Datei erstellen

    Batch Datei zum verschieben einer Datei erstellen: Hallo zusammen, kann mir jemand helfen? ich möchte gerne einte batch datei schreiben, die mir eine datei von beispielsweise C:\"dateiname"...
  • Ähnliche Themen

    Oben