Batch Syntaxfehler bei move und ren befehl

Freenk

Cadet 1st Year
Registriert
Okt. 2013
Beiträge
8
Code:
@echo off

set dir_backup=Backup
set name_backup=Abgleich


if exist "R:\%dir_backup%\%name_backup%1.2" (del "R:\%dir_backup%\%name_backup%1.3" & ren "R:\%dir_backup%\%name_backup%1.2" "R:\%dir_backup%\%name_backup%1.3")
if exist "R:\%dir_backup%\%name_backup%1.1" (ren "R:\%dir_backup%\%name_backup%1.1" "R:\%dir_backup%\%name_backup%1.2")

REM if exist "R:\%dir_backup%\%name_backup%1.2" (move /Y "R:\%dir_backup%\%name_backup%1.2" "R:\%dir_backup%\%name_backup%1.3")
REM if exist "R:\%dir_backup%\%name_backup%1.1" (move /Y "R:\%dir_backup%\%name_backup%1.1" "R:\%dir_backup%\%name_backup%1.2")


if exist R:\Backup (goto MIDD)

mkdir R:\Backup


:MIDD

robocopy "C:\Users\%username%\HTML" "R:\%dir_backup%\Abgleich1.1" /MIR /XO /IS 

REM robocopy "C:\Users\%username%" "%dir_backup%\%name_backup%1.1" /MIR /XO /IS 

REM /XD "C:\Users\%username%\keineahnung" "C:\Users\%username%doof"



:ENDE
pause

Also wie ihr schwer erkennen könnt wisst ihr was ich vorhabe
Die if-Funktion mit REM davor war der erste versuch welcher funktionierte als ich heute allerdings es nochmal versucht habe kommt bei dieser funtion ein Syntaxfehler warum auch immer habe alles ausprobiert das /Y an jede erstelle getan und trotzdem. Ohne das /Y macht er es bis er einen Ordner ersetzten muss dann fragt er nach und dass will ich nicht.

Also habe ich es anders versucht und zwar mit einer REN funtion und wie man sieht sieht man nicts denn es führte auch zu einem Syntaxfehler bei der if-Funktion.

Ich dreh langsam aber sicher am Rad
Langsam glaube ich es liegt nicht am script sondern am pc oder so

Danke schonmal für eure hilfe
 
mache aus dem & ein &&, damit der 2. Teil nur abläuft, wenn der erste erfolgreich war.

und zu den if exist... meine alten batches liefen damit nie, musste immer andersrum rangehen mit if not exist. dann ging es.

hier noch tips und infos: http://de.wikibooks.org/wiki/Batch-Programmierung

lg
fire
 
das funktioniert nicht weil nach dreimaliger ausführung des scriptes sind alle Ordner vorhanden also ist if not exist raus.
Trotzdem danke
 
Bei move musst du aufpassen. Wenn das Zielverzeichnis existiert, dann wird das Quellverzeichnis hineingeschoben anstatt umbenannt.

Bei ren hast du tatsächlich einen Fehler in der Syntax. Beim Zielverzeichnis dürfen Laufwerk und Pfad nicht mit angegeben werden:
Code:
REN [Laufwerk:][Pfad]Dateiname1 Dateiname2
 
perfekt hat letztendlich funtioniert. habe die REN funktion genommen und wie du sagtest war das Ziel falsch gesetzt

Danke :D
 
Zurück
Oben