WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 21.11.2003, 14:55   #1
Warsi
Veteran
 
Registriert seit: 15.01.2000
Beiträge: 274


Warsi eine Nachricht über ICQ schicken
Standard Dateien umbenennen (Winone?)

hallo

ich hab folgendes problem:

ein ordner mit (über 1000) pdf's, die alle irgendwie benannt sind.
ich möchte sie jetzt so umbenennen, dass der "titel" der dateiname ist.

dazu hab ich folgendes getan:
per "Midas Extractor" alle files in plain text umgewandelt
in der ersten zeile steht jetzt immer das, wie die pdf's heissen sollen

per WinOne hab ich dann folgendes gemacht:

READLN 1007.txt 1
STRTRIM %readln%
STRSPLIT -1 %STRTRIM%
ren 1007.pdf "%STRSPLITA%.pdf"

das funktioniert jetzt aber eben nur für ein einzelnes file.
wie mach ich das ganze jetzt für alle files in dem ordner?
ich komm mit der FOR schleife, die das programm bietet komm ich nicht klar.. bekomm immer syntax error

weiss jemand wie das richtig funktioniert oder wie ich es sonst lösen könnte das problem?

vielen dank
warsi
Warsi ist offline   Mit Zitat antworten
Alt 21.11.2003, 16:52   #2
flinx
Inventar
 
Registriert seit: 08.04.2001
Beiträge: 3.101


Standard

Habe das kurz angeschaut. Sollte mit
Code:
FOR %%i IN (*.txt) do (
READLN %%i 1
STRTRIM %readln%
STRSPLIT -1 %STRTRIM%
STRREP ".txt" ".pdf" %%i
ren %STRREP% "%STRSPLITA%.pdf" )
funktionieren. STRREP musst du noch austesten und die Pfade ev. anpassen.
Ohne Gewähr.
flinx ist offline   Mit Zitat antworten
Alt 21.11.2003, 17:10   #3
Warsi
Veteran
 
Registriert seit: 15.01.2000
Beiträge: 274


Warsi eine Nachricht über ICQ schicken
Standard

werds bei nächster gelegenheit probieren

hatte aber die schleife eh so.. glaub ich zumindest

danke jedenfalls
Warsi ist offline   Mit Zitat antworten
Alt 27.11.2003, 17:18   #4
Warsi
Veteran
 
Registriert seit: 15.01.2000
Beiträge: 274


Warsi eine Nachricht über ICQ schicken
Standard

funktioniert leider noch nicht ganz..
obwohl das ganze schon funktionieren würde (für ein dateienpaar.. also einmal txt und dazugehörige pdf datei)
nur mit der for schleife haut irgendwas nicht hin
%%i hat zwar wenn man es ausgibt den richtigen wert (den aktuellen txt dateinamen)
aber readln %%i 1 ist nie ein aktueller wert
obwohl ich noch nicht rausgefunden hab welchen wert er da hernimmt (der letzte ist es nicht immer)
wenn man in den ordner nämlich ein neues dateienpaar dazugibt, dann hat readln %%i trotzdem noch den wert, den es zuvor hatte
führt man die batch datei noch ein paar mal aus, dann gibt er für %readln% den letzten wert aus.

@echo off
cls
FOR %%i IN (*.txt) do (
echo eingelesene Textdatei: %%i
READLN %%i 1
echo eingelesene Textzeile: %READLN%
STRTRIM %readln%
STRSPLIT -1 %STRTRIM%
STRREP ".txt" ".pdf" %%i
echo Dazugehoerige PDF Datei: %strrep%
echo Neuer Dateiname: %strsplita%.pdf
REM ren %strrep% "%STRSPLITA%.pdf"

echo Die Datei %strrep% wurde zur Datei %STRSPLITA%.pdf umbenannt

echo -----------------NEXT LOOP STEP------------------- )


ergibt die ausgabe:

eingelesene Textdatei: 1007.txt
eingelesene Textzeile: Rover 25 1,4 Classic
Dazugehoerige PDF Datei: 1158.pdf
Neuer Dateiname: Rover 25 1,4 Classic.pdf
Die Datei 1158.pdf wurde zur Datei Rover 25 1,4 Classic.pdf umbenannt
-----------------NEXT LOOP STEP-------------------
eingelesene Textdatei: 1020.txt
eingelesene Textzeile: Rover 25 1,4 Classic
Dazugehoerige PDF Datei: 1158.pdf
Neuer Dateiname: Rover 25 1,4 Classic.pdf
Die Datei 1158.pdf wurde zur Datei Rover 25 1,4 Classic.pdf umbenannt
-----------------NEXT LOOP STEP-------------------
eingelesene Textdatei: 1158.txt
eingelesene Textzeile: Rover 25 1,4 Classic
Dazugehoerige PDF Datei: 1158.pdf
Neuer Dateiname: Rover 25 1,4 Classic.pdf
Die Datei 1158.pdf wurde zur Datei Rover 25 1,4 Classic.pdf umbenannt
-----------------NEXT LOOP STEP-------------------
Warsi ist offline   Mit Zitat antworten
Alt 27.11.2003, 18:23   #5
flinx
Inventar
 
Registriert seit: 08.04.2001
Beiträge: 3.101


Standard

Versuch:
Code:
@echo off
cls
FOR %%i IN (*.txt) do {
echo eingelesene Textdatei: %%i
READLN %%i 1
echo eingelesene Textzeile: %READLN%
STRTRIM %readln%
STRSPLIT -1 %STRTRIM%
STRREP ".txt" ".pdf" %%i
echo Dazugehoerige PDF Datei: %strrep%
echo Neuer Dateiname: %strsplita%.pdf
REM ren %strrep% "%STRSPLITA%.pdf"

echo Die Datei %strrep% wurde zur Datei %STRSPLITA%.pdf umbenannt

echo -----------------NEXT LOOP STEP------------------- 
}
http://www.winone.com.au/command-grouping.html
flinx ist offline   Mit Zitat antworten
Alt 28.11.2003, 15:23   #6
Warsi
Veteran
 
Registriert seit: 15.01.2000
Beiträge: 274


Warsi eine Nachricht über ICQ schicken
Standard

hi

vielen dank für die hilfen
hat so funktioniert
und hat mir viiiel arbeit erspart

warsi
Warsi ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:33 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag