Pfadangabe Fehler
Hallo,
ich habe mir ein config - File geschriben , mit dessen Hilfe ich kinderleicht meine Pfade aktualisieren kann.
Configfile:
ich aktualisiere die Pfade in den verschiedenen Files mit:
Jetzt will ich die Namen in einem Ordner ändern. Der Pfad aus dem Configfile heißt z.B. C:\Video_Tool\VIDEO_WAITER , wenn ich jetzt , wie im folgenden Code
etwas an den Pfad dranhänge , wird das Anhängsel nicht erkannt.
Also wird anstatt alle Files im Ordner WAITER nur der komplette Ordner umbenannt.
Bitte um Hilfe, Greez A0D0S0
ich habe mir ein config - File geschriben , mit dessen Hilfe ich kinderleicht meine Pfade aktualisieren kann.
Configfile:
pfad_old=Y:\Video_Tool\Video\VIDEO_OLD
pfad_new=Y:\Video_Tool\Video\VIDEO_NEW
pfad_waiter=Y:\Video_Tool\Video\VIDEO_WAITER
pfad_backup=Y:\Video_Tool\Video\VIDEO_BACKUP
pfad_start=Y:\Video_Tool\Scripts\FILE_WAITER.bat
pfad_delete=Y:\Video_Tool\Scripts\delete.bat
pfad_conf=Y:\Video_Tool\Scripts\config.bat
ich aktualisiere die Pfade in den verschiedenen Files mit:
set config=Y:\Video_Tool\config.ini
for /f "tokens=1,2 delims==" %%a in (%config%) do (
if %%a==pfad_old set pfad_old=%%b
)
Jetzt will ich die Namen in einem Ordner ändern. Der Pfad aus dem Configfile heißt z.B. C:\Video_Tool\VIDEO_WAITER , wenn ich jetzt , wie im folgenden Code
etwas an den Pfad dranhänge , wird das Anhängsel nicht erkannt.
for %%i in (%pfad_waiter%\*.*) do (
ren %%~i %ort%%trenn%!zaehler!%%~xi
set /a zaehler = %zaehler+1
)
Also wird anstatt alle Files im Ordner WAITER nur der komplette Ordner umbenannt.
Bitte um Hilfe, Greez A0D0S0
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 170433
Url: https://administrator.de/contentid/170433
Ausgedruckt am: 26.11.2024 um 03:11 Uhr
9 Kommentare
Neuester Kommentar
Hallo A0D0S0!
Schwer nachvollziehbar, dass der Ordner umbenannt würde; selbst, wenn die Zeile 3 tatsächlich so aussähe, wie von Dir gepostet - richtig wäre
oder
oder noch einfacher
Lass den Batch mal ohne "
Grüße
bastla
Schwer nachvollziehbar, dass der Ordner umbenannt würde; selbst, wenn die Zeile 3 tatsächlich so aussähe, wie von Dir gepostet - richtig wäre
set /a zaehler=!zaehler!+1
set /a zaehler=zaehler+1
set /a zaehler+=1
Lass den Batch mal ohne "
echo off
" laufen und kontrolliere, was in der Schleife genau passiert ...Grüße
bastla
Hallo A0D0S0!
Übrigens: Zur Sicherheit würde ich generell Anführungszeichen verwenden, also etwa
schreiben ...
Grüße
bastla
durchlaufen geht nicht (mit echo off) weil es irgendwo abbricht -.-
Genau dafür ist ja das Anzeigen der Befehle gut - schau mal, welcher Befehl den Abbruch verursacht, bzw welcher davor noch richtig ausgeführt wurde ...Übrigens: Zur Sicherheit würde ich generell Anführungszeichen verwenden, also etwa
for %%i in ("%pfad_waiter%\*.*") do (
Grüße
bastla
Hallo A0D0S0!
Wie ist
Zum Aktualisieren der Variablen übrigens ein Tipp: Wenn Du einmal vorweg eine Schleife der Art
verwendest, wären damit alle Pfade dem Inhalt der ini-Datei eintsprechend gesetzt ...
Grüße
bastla
Wie ist
wird der Ausdruck gar nicht erkannt.
zu verstehen, was passiert im Ablauf?Zum Aktualisieren der Variablen übrigens ein Tipp: Wenn Du einmal vorweg eine Schleife der Art
for /f "delims=" %%a in (%config%) do set "%%a"
Grüße
bastla