Batch datei was mir die dateien verschiebt ?

  • #1
S

Stefanie1980

Guest
Hi :D
Hallo

Ich habe Mir eine Batch Datei geschrieben die dateien verschiebt (move) ,

:start
@echo off
move /y D:\lesen\*.* D:\schreiben\
goto start

das Problem ist aber das es ganze zeit zur start springt und keine pause zwischen macht z.b. wait 120 sec

Das mächste Problem ist wenn keine dateien in denn verzeichnis sind , kommt immer ein syntax fehler , kann man das auch irgend wie beheben mit IF z.b.
Leider kenne ich mich nicht so gut aus mit batch , kann mir einer da weiter helfen

mfg
Stefanie
 
  • #3
Welchen Sinn macht diese Batch - ich steig da nicht durch....

Cheers,
Joshua
 
  • #4
Bei mir geht sleep auch ohne dem sleep.exe!
Alternativ kann man auch pause einsetzen, dann bestimmt man selber wann es weiter geht.

Ich hänge zur Zeit am gleichen Problem und zwar möchte ich Dateien auf einen anderen Computer verschieben, will aber vorher eine Abfrage ob überhaupt Dateien im Ordner sind. So weit bin ich:

Code:
	if exist D:\Temp2\*.* (
	goto Case1
	) else (
	goto Case2
	)

:case1
	echo Daten verfuegbar
	dir D:\Temp2
	exit /b

:case2
	echo Keine Daten verfuegbar
	dir D:\Temp2

Will aber nicht funktionieren, das Ding lügt mich ständig an!
Ich glaube Stefanie könnte die selbe Abfrage gut gebrauchen.
 
  • #5
In einer Batchdate kannst Du nur überprüfen ob ein Ordner, oder bestimmte Dateien vorhanden sind, nicht ob generell irgendwelche Dateien da sind.
 
  • #6
Mein Betriebssysteme & Administration Lehrer hat mir das selbe vorgeschlagen was ich schon gepostet habe...aber mit einer Ausnahme: ELSE weg lassen, also zwei mal IF:

Code:
if exist C:\ordner\*.* goto Case1
if not exist C:\ordner\*.* goto Case2

...funzt aber trotzdem net :-\
Ich kann es mir nicht vorstellen, dass es mit Batch nicht möglich ist nachzusehen ob im Ordner Dateien sind! :mad:
 
  • #7
if exist prüft auch die existenz des ordners ab, nicht nur ob dateien drin sind oder nicht. d.h. in deinem fall: existiert der ordner ordner nicht wird der wert falsch zurückgegeben und es passiert nichts. hast du einen ordner der existiert, wird der wert wahr zurückgegeben und führt die nachfolgenden befehle durch, z.b. das goto. erschwerend bei deinem vorhaben ist, daß jedes existierende verzeichnis einen sogenannte null-eintrag (NUL) beinhaltet und dadurch bei der abfrage mit if exist immer der wert wahr zurückgegeben wird, egal ob da jetzt eine datei drin steht oder nicht. also würde ich an deiner stelle prüfen, ob das verzeichnis existiert und das ganze verzeichnis moven unabhängig, ob da was drin ist oder nicht ... hier ein beispiel

C:\Temp>dir
Datenträger in Laufwerk C: ist Festplatte
Datenträgernummer: 9028-0CEA

Verzeichnis von C:\Temp

16.02.2005 13:32 <DIR> .
16.02.2005 13:32 <DIR> ..
0 Datei(en) 0 Bytes
2 Verzeichnis(se), 6.073.761.792 Bytes frei

C:\Temp>if exist *.* echo das verzeichnis ist nicht leer
das verzeichnis ist nicht leer

und wenn du schon mit marken arbeitest, dann achte auf die schreibweise. groß klein ist hier sehr wichtig da case sensitiv:

if exist D:\Temp2\*.* (
goto Case1
) else (
goto Case2
)

:case1
echo Daten verfuegbar
dir D:\Temp2
exit /b

:case2

greetz

hugo
 
  • #8
Danke an alle! Habe nach langem überlegen und rum probieren eine Lösing gefunden:

Code:
copy d:\ordner\*.* NUL
if errorlevel 1 goto NoData

Ist nicht besonders elegant, aber es erfüllt den Zweck. Alles andere reagiert blöderweise auf . und .. die immer in den Ordnern sind.
 
  • #9
In einem anderen Forum hat man mir die Lösung vorgeschlagen:

Code:
set count=0
for %%i in (D:\Temp\*) do set /a count+=1
if %count%==0 goto nix
goto was

Funzt spitze!!! Und hat noch eine Zählfunktion! ;D
 
  • #10
Hi,

mal ne ganz doofe Frage, weil ich in solchen Sachen echter N00b bin:

Wo muss ich die Datei schreiben? Bzw. mit was?

Danke
 
  • #11
mit dem editor...
und dann als .bat speichern
 
  • #12
und es ist egal wie ich die dann nenne?
Wo muss ich sie abspeichern? System32?

Danke
 
  • #13
Neo64 schrieb:
und es ist egal wie ich die dann nenne?
Wo muss ich sie abspeichern? System32?

Danke

z.B.: beispiel.bat --->Name

Speicherort ist egal. denn die batchdatei wird mit einem doppelklick gestartet.
 
  • #14
PhReAkAzOiD schrieb:
In einem anderen Forum hat man mir die Lösung vorgeschlagen:

Code:
set count=0
for %%i in (D:\Temp\*) do set /a count+=1
if %count%==0 goto nix
goto was

Funzt spitze!!! Und hat noch eine Zählfunktion! ;D

Also bin ich völlig verblöded oder was :(

Ich hab jetzt volgendes gemacht

set count=0
for %%i in (D:\Neuer) do set /a count+=1
if %count%==0 goto nix
goto was

Im Ordner Neuer hab ich zum Test eine test.txt reingetan. Starte ich die test.bat auf dem Desktop öffnet sich kurz Dos, das wars.
Aber die Datei ist immer noch da. Und wo ist in da genau der Zielordner angegeben, wohin die Datei verschoben werden soll?

Bitte hilft mir... Neo64
 
  • #15
Hallo Neo, ich würde dir empfehlen: Nimm erst mal die Blaue Pille!

Dieser Code bewirkt nur das überprüfen und zählen der Dateien, das mit dem verschieben kannst du weiter oben im Thread der Stefanie sehen.
Zum Zählen und Überprüfen der Dateien:

set count=0
Diese Zeile setzt eine Variable namens count und gibt ihr den Wert 0

for %%i in (D:\Temp\*) do set /a count+=1
Diese Zeile sucht nach Dateien im Ordner D:\Temp\ , dabei ist der * sehr wichtig!!! Er symbolisiert die Dateien!!! Falls Dateien im Ordner verfügbar sind, werden sie gezählt und die Anzahl in der Variable count abgelegt.

if %count%==0 goto nix
Dies ist die Abfrage: Wenn die Variable count 0 ist, also keine Dateien im Ordner gezählt wurden, gehe zu der Marke nix

goto was
Wenn doch Dateien im Ordner waren, springt man zu der Marke was

Ich würde dir empfehlen erst einmal mit leichteren Sachen zu experementieren...Batch ist sehr einfach und schnell zu erlernen. Es gibt viele tutorials im Net, such einfach bei nach batch tutorials oder mach mit Start > Ausführen... > cmd.exe die Eingabeaufforderung auf und gib da help ein.
Deine Batch Files kannst du auch bequem in der Eingabeaufforderung ausführen, sie wird auch Shell gennant.
 
Thema:

Batch datei was mir die dateien verschiebt ?

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben