Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Directory und Dateinamen aus Datei auslesen, in Directory wechseln und Dateiennamen umbenennen

Mitglied: readonly

readonly (Level 1) - Jetzt verbinden

13.12.2007, aktualisiert 14.12.2007, 4221 Aufrufe, 5 Kommentare

So, jetzt wird es kompliziert

Ich habe ein Datei, die ausgelesen werden soll. Im gleichen Verzeichnis gibt es n Ordner mit n Dateien.

Die Datei, die ausgelesen werden soll, hat folgendes Format:

SF001
01 aaaaaaaaa
02 bbbbbbbbbbb
03 ccccccccc
.
.

SF002
01 ddddddddddd
02 eeeeeeeeee
03 fffffffffffffff
04 ggggggggggg
.
.
.
.

SF003
01 hhhhhhhhhh
02 iiiiiiiiiiiiiiiiii
.
.
.

Es soll jetzt im Verzeichnis SF001 die Datei, die mit 01 anfängt, also z.B. 01.txt in 01_aaaaaaaaa.txt umbenannt werden.
Dann die Datei 02.txt in 02_bbbbbbbbb.txt. usw. usw

Wenn Verzeichnis SF001 agearbeitet ist, dann ins Verzeichnis SF002 wechseln und die ganze Prozedur mit 01.txt nach 01_ddddddddddd.txt umbenennen.....

Vielleicht kann man die Verzeichnisse daran erkennen, dass sie alphanumerisch sind und daher Verzeichnisse sein müssen? Oder mit SF beginnen, denn das werden immer Verzeichnisse sein.

Vielen Dank im voraus!
Mitglied: bastla
13.12.2007 um 22:37 Uhr
Hallo readonly und willkommen im Forum!

Das könnte so gehen:
01.
@echo off & setlocal 
02.
set "Basis=D:\Temp" 
03.
set "Liste=DateiListe.txt" 
04.
 
05.
for /f "usebackq tokens=1*" %%i in ("%Basis%\%Liste%") do call :ProcessLine "%%i" "%%j" 
06.
goto :eof 
07.
 
08.
:ProcessLine 
09.
set "P=%~1" 
10.
if /i "%P:~0,2%"=="SF" set "Verz=%Basis%\%P%" & goto :eof 
11.
if exist "%Verz%\%P%.txt" ren "%Verz%\%P%.txt" %2.txt 2>nul
Bitte bei der Angabe des Basisordners keinen abschließenden "\" (daher zB auch für "D:\" nur "D:" schreiben) und für die Dateiliste nur den Namen (ohne Pfadangabe) verwenden.

Bei Umbenennungsaktionen immer zu berücksichtigen: Falls im Zielordner bereits eine Datei mit dem neuen Namen existiert, wird (in der aktuellen Fassung) die zu bearbeitende Datei (0x.txt) nicht umbenannt.

Grüße
bastla
Bitte warten ..
Mitglied: readonly
14.12.2007 um 10:07 Uhr
Klasse, vielen Dank. Nach ein paar Modifikationen für mein Umfeld hat es einwandfrei geklappt.
Nur beim renamen macht er aus ’ (Hochkomma) ein Æ. Aber das krieg ich noch hin Zur Not mit einem rename programm, denn es werden schon so um die 7000 Dateien......

Nochmals vielen Dank!
Bitte warten ..
Mitglied: bastla
14.12.2007 um 10:30 Uhr
Hallo readonly!

Du kannst es mit dem Umschalten der verwendeten Codepage versuchen - dazu vor der "for"-Schleife ein "chcp 1252" einfügen.

Grüße
bastla
Bitte warten ..
Mitglied: readonly
14.12.2007 um 11:38 Uhr
hat auch geklappt!

Nochmals vielen Dank!
Bitte warten ..
Mitglied: Biber
14.12.2007 um 12:50 Uhr
Moin readonly,

Willkommen auch von mir.
Nachdem ich in den letzten Tagen so oft genervt auf Beiträge im Frittenbudendeutsch reagiert habe, möchte ich auch positives Feedback nicht zurückhalten.

Du hast eine klare und vollständige Aufgabenstellung formuliert, immer prompt rückgemeldet und einen absolut sauberen Erst-Beitrag hinterlassen.

Wenn Du dieses lobenswerte Verhalten weiter beibehältst, dann kannst Du auch diese nicht-so-gern-gelesene Phrase "Vielen Dank im voraus" beim nächsten Mal einsparen, und selbst ich habe nichts mehr zu meckern.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Dateinamen auslesen dazugehörige Datei suchen und umbenennen

Frage von Klaus20Batch & Shell1 Kommentar

Hätte mal wieder eine Frage an die Batch Experten. Habe eine Datei mit dem Orginal Namen und möchte daß ...

Batch & Shell

Umbenennen entpackter Dateien nach Dateinamen der rar- zip-Datei

Frage von windows-nutzerBatch & Shell

Hallo zusammen, ich habe nachfolgenden Code, der mir verpackte Dateien entpackt. Da ich jedoch mehrere Dateien habe, die ich ...

Batch & Shell

Batch - Dateinamen auslesen, umbenennen + dreistellige Zahl vor bisherigen Dateinamen setzen.

Frage von citroendsvierBatch & Shell4 Kommentare

Hallo und guten Morgen, ich möchte für drei Ordner (2011, 2013, 2014) eine Batch schreiben, die die darin enthaltenen ...

Batch & Shell

Batch Datei: Dateiendung beibehalten, jedoch Dateiname Datei B wie Dateiname Datei A umbenennen

gelöst Frage von SchniefnaseBatch & Shell8 Kommentare

Hallo zusammen, ich habe eine Frage zu einer Batchdatei. Ich erhalte aus einer externen Verarbeitung stets 2 Dateien, isoliert ...

Neue Wissensbeiträge
Windows 10
Windows 10 - Probleme mit Point-And-Print
Tipp von emeriks vor 48 MinutenWindows 10

Hi, wir kämpfen z.Z. mit einigen Druckertreibern, welche unter Win10 beim Verbinden eines Druckers von Printserver mit dem Dialog ...

Windows 10

Windows 10 1803 - Ihr Roamingbenutzerprofil wurde nicht vollständig synchronisiert

Anleitung von Deepsys vor 2 StundenWindows 10

Bei allen Windows 10 1803 PCs traten Probleme mit den Servergespeicherten Profilen auf. Das Abmelden dauerte sehr lange und ...

Exchange Server
Exchange - Fehler mit 2018-07 Sicherheitsupdate
Tipp von ArnoNymous vor 2 TagenExchange Server7 Kommentare

Hallo, es gibt mal wieder Freude mit den MS-Updates. KB4338814 führt dazu, dass der Exchange keine Mails mehr zustellt. ...

Suche Projektpartner

PC Recycling Projekte mit Flüchtlingen und Kids suchen Materialspenden und Mitmacher!

Erfahrungsbericht von NettePCyclePiraten vor 2 TagenSuche Projektpartner8 Kommentare

Hallöchen liebe Kollegen, ich betreue zwei PC-Gruppen im Raum Dortmund: "Ne#e PCycle Pir@ten" & "PCschr@uber Br@mbauer" Wir sind eine ...

Heiß diskutierte Inhalte
Humor (lol)
Windows 10 - immer für Überraschungen gut
gelöst Frage von HenereHumor (lol)18 Kommentare

Eben nach (beim) installieren der neuesten Updates für 1803 :-) Und sorry fürs Handyfoto, aber der musste sein. Nach ...

Batch & Shell
PowerShell Auflösung zu .txt (Skript als exe) falsche Auflösung?!
Frage von timsen-96Batch & Shell18 Kommentare

Ich habe folgendes Skript um die Bildschirmauflösung herauszufinden, was auch in PowerShell super funktioniert: Add-Type -AssemblyName System.Windows.Forms $Width = ...

Exchange Server
Exchange Backup 10 Jahre Aufbewahrung
Frage von arccosExchange Server17 Kommentare

Hallo zusammen. Aktuell beschäftigen mich ein paar Fragen zum Thema Office365/ Exchange. 1.10 Jahre Aufbewahrungspflicht sicherstellen 2.Kann man als ...

Samba
Samba-NAS Zugriff verweigert
gelöst Frage von VernoxVernaxSamba15 Kommentare

hallo ich schaffe es einfach nicht meinem User Rechte zum schreiben zu geben. Ich habe dies alles auf nem ...