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

Frage Entwicklung Batch & Shell

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, 4213 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
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 ...

Windows Tools
Dateinamen automatisch umbenennen
Frage von chrisschmitt93Windows Tools2 Kommentare

Hallo zusammen, könnte mir freundlicherweise einer ein Skript zukommen lassen , das automatisch alle Ä in AE ,Ö ind ...

Batch & Shell
Dateinamen mit Powershell umbenennen ???
gelöst Frage von lexuraBatch & Shell2 Kommentare

Hallo, Ich benötige ein Script mit dem ich eine MP3 Sammlung umbenennen kann. Die Dateien lauten im Ursprung alle ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Entwicklung
VBS: alle PDF-Dateien in einem Ordner gleichzeitig öffnen
gelöst Frage von JuweeeEntwicklung9 Kommentare

Hallo, ich habe in deiner Ordnerstruktur (.\Tagesberichte\xx.18\) mehrere dynamische PDF-Formulare (mit LCD erstellt). Die Berichtsformulare sind im Layout alle ...

Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall9 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen8 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...