Laden...

erzeugen eines ordner per batch: "Zugriff verweigert"

Erstellt von Animal21 vor 14 Jahren Letzter Beitrag vor 14 Jahren 4.966 Views
A
Animal21 Themenstarter:in
144 Beiträge seit 2008
vor 14 Jahren
erzeugen eines ordner per batch: "Zugriff verweigert"

Hallo leute,

Ich möcht gern am monatsende einen ordner, der einige txt, xml, js ... datein enthält von einem server (intranet) auf meine externe platte kopieren und so sichern.
das ganze soll in einer batch datei geschehen, in der ziel und quell ordner veränderbar sind.

hier mein ansatz:


@echo off

set src = K:\NetWork\test1\
set ziel = K:\NetWork\test2\

if not exist %ziel%\ mkdir %ziel%\
 
cd %src%\

//Hier die forschleife, wobei ich aber nicht weis wie ich die gestalten muss, damit sie alle datein in dem ordner (plus unterordner) in den zielordner kopiert

echo Dateien kopiert!!!

mein erstes problem war nun, dass

  1. mkdir %ziel%\ einen fehler auslöst - "Zugriff verweigert", was aber schwachsinn ist, da ich die rechte habe und ich habs auch in der cmd probiert, da geht es einwandfrei
  2. springt er nie in den "if not" pfad, obwohl der ordner nicht existiert (hab erstens außerhalb von der if abfrage getestet...)

bitte sagt mir was falsch ist und wie die schleife aussehen müsste

mfg
ani

danke schonmal

82 Beiträge seit 2009
vor 14 Jahren
  1. Musst du die Leerzeichen bei der Variablendeklaration nach dem Gleichheitszeichen entfernen, da er das erste Zeichen nach dem Gleich als Anfang des Wertes nimmt und bei einem Leerzeichen gibts einen Fehler, also

set src=K:\NetWork\test1\
set ziel=K:\NetWork\test2\

  1. Was du suchst ist der xcopy-Befehl (dann brauchst du auch keine For-Schleife), also sähe die Batch-Datei wie folgt aus:

@echo off

set src=K:\NetWork\test1\
set ziel=K:\NetWork\test2\

if not exist %ziel% mkdir %ziel%

xcopy %src% %ziel% /e

echo Dateien kopiert!

Diskordianer schwimmen nicht gegen den Strom - sie klettern aus dem Fluss! Ein Mathematiker ist ein Mensch, der einen ihm vorgetragenen Gedanken nicht nur sofort versteht, sondern auch weiß auf welchem Denkfehler er beruht
E
107 Beiträge seit 2008
vor 14 Jahren

hab etwas ähnliches auch mit xcopy realisiert.

Für die Bedeutung der Parameter ( z.B. /e ) gibts u.a. HIER eine kurze Übersicht.

Ich lasse mich gerne korrigieren! (:

82 Beiträge seit 2009
vor 14 Jahren

Oder auch ganz einfach, in der Windows-Hilfe mal nach "Befehlszeilenreferenz" suchen, da bekommst du auch ne Übersicht über aller Befehle und Parameter mit Beispielen.

Diskordianer schwimmen nicht gegen den Strom - sie klettern aus dem Fluss! Ein Mathematiker ist ein Mensch, der einen ihm vorgetragenen Gedanken nicht nur sofort versteht, sondern auch weiß auf welchem Denkfehler er beruht
A
Animal21 Themenstarter:in
144 Beiträge seit 2008
vor 14 Jahren

danke, wenigstens wird nun der ordner erstellt ^^

aber es kopiet nix, ich benutz vistas, gibts es da vll einen anderen oder irgendwelche probleme?


@echo off

set src=K:\NetWork\test1\
set ziel=K:\NetWork\test2\

if not exist %ziel% mkdir %ziel%

echo Kopiere...
xcopy %src% %ziel% /e

cls
echo Dateien kopiert!
pause > nul

mfg
ani

82 Beiträge seit 2009
vor 14 Jahren

Also auch unter Vista funktioniert xcopy definitiv.
Nimm mal das @echo off raus und guck mal, was er dir da ausgibt.

Diskordianer schwimmen nicht gegen den Strom - sie klettern aus dem Fluss! Ein Mathematiker ist ein Mensch, der einen ihm vorgetragenen Gedanken nicht nur sofort versteht, sondern auch weiß auf welchem Denkfehler er beruht
A
Animal21 Themenstarter:in
144 Beiträge seit 2008
vor 14 Jahren

danke leute
funktioniert alles

mfg
ani


@echo off

echo Pfad: %CD%

set src="%CD%"\Copy
set ziel="%CD%"\Copy2

if not exist %ziel% mkdir %ziel%

echo Kopiere...
xcopy %src% %ziel% /e /y


echo Dateien kopiert!...
pause > nul

795 Beiträge seit 2006
vor 14 Jahren

Hi,

RoboCopy könnte das sein, was du súchst. Kann imho sogar inkrementelle Sicherung.

Gruß, Christian.

`There are 10 types of people in the world: Those, who think they understand the binary system Those who don't even have heard about it And those who understand "Every base is base 10"`
82 Beiträge seit 2009
vor 14 Jahren

Stimmt, der y-Parameter ist natürlich auch sinnvoll ^^

Diskordianer schwimmen nicht gegen den Strom - sie klettern aus dem Fluss! Ein Mathematiker ist ein Mensch, der einen ihm vorgetragenen Gedanken nicht nur sofort versteht, sondern auch weiß auf welchem Denkfehler er beruht