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

Dateien Speicherort-Spezifisch umbenennen und Teilstrings darin ersetzen

Mitglied: Heinzel

Heinzel (Level 1) - Jetzt verbinden

19.07.2011, aktualisiert 19:38 Uhr, 2187 Aufrufe, 4 Kommentare

Hallo Leute,
Nachdem ich nach 2 Stunden basteln und viel googlen mehrfach hier nützliche Informationen gefunden habe, aber mein "Projekt" nicht wirklich voranging, habe ich beschlossen euch mal um Hilfe zu fragen.
schonmal im Vorraus vielen Dank für eure Hilfe.

Zu meinem Problem (Betriebssystem ist Windows XP):

Erstmal abstrakt:
Ich habe einen Ordner in dem einige Dateien (hauptsächlich PDF's und die besagte BAT) liegen. Die PDF's sind nach Kürzeln benannt.
Die bat soll nun die PDF's (keine anderen Dateien) wie folgt umbenennen:
Zunächst soll soll der Name (nicht Pfad!) des Ordners in dem sie liegen an den Anfang ihres Dateinamens gesetzt werden und mit einem Unterstrich mit dem "Hauptnamen" verbunden werden. Dieser ist abhängig vom voherigen Namen (einem Kürzel) der PDF. Dieses Kürzel soll dann nach einer hardcoded-Liste ersetzt werden (falls keine Ersetzung für das Kürzel definiert wurde, soll dieses als "Hauptname" benutzt werden).
Zum Schluss soll die BAT sich selbst löschen (das hab ich bei meinen Versuchen immerhin hinbekommen :O )


An einem Beispiel erklärt:
Ich habe einen Ordner mit Namen "0-50_PS".

Darin sind folgende Dateien:
LKW.txt
LKW.pdf
PKW.pdf
BC.pdf
Moped.pdf
rename.bat

In rename.bat ist (hardgecoded, aber an einer zentralen Stelle änderbar) definiert:
LKW soll umbenannt werden in "Lastkraftwagen"
PWK soll umbenannt werden in "Personenkraftwagen"
BC soll umbenannt werden in "Boby Car"
DR soll umbenannt werden in "Dreirad"

Nach Ausführung von rename.bat soll der Inhalt so aussehen:
LKW.txt
0-50_PS_Lastkraftwagen.pdf
0-50_PS_Personenkraftwagen.pdf
0-50_PS_Boby Car.pdf [Ja, das Leerzeichen muss leider sein]
0-50_PS_Moped.pdf


Die TXT-Datei soll also noch genauso heißen, obwohl sie ein Kürzel enthält. Die PDF's sollen _alle_ den Ordnernamen am Anfang stehen haben und anschließend das (evtl. ersetzte) Kürzel.




Ich hoffe ich habe mich verständlich ausgedrückt.
Ich habe wirklich ewig rumprobiert, aber mit meinen (minimalen) Batch-Kenntnissen leider gescheitert. Wäre super wenn mir da jemand was schustern könnte. Falls das zuviel verlangt ist, kann ich morgen mal meinen (mehr als fragwürdigen) Code posten und meine Probleme aufzählen und nächste Woche hab ich das Ding dann auch fertig mit eurer Hilfe


Vielen Danke nochmal!

mit freundlichen Grüßen
Bene / Heinzel
Mitglied: Skyemugen
19.07.2011 um 20:06 Uhr
Aloha,

nun erstens möchte ich dich darauf hinweisen, Batchdateien nicht nach Befehlen zu benennen (rename.bat) ...

Zweitens möchte ich dich bitten, für meinen Lösungsvorschlag eine Liste.txt imselben Verzeichnis anzulegen, die dann so gegliedert ist:
LKW=Lastkraftwagen 
PKW=Personenkraftwagen 
BC=Bobby Car 
DR=Dreirad 
Moped=Moped
Um dann die batch (die sich imselben Verzeichnis befindet) mit folgendem Code zu füllen:
01.
@echo off 
02.
for %%* in (.) do set "Verzeichnis=%%~n*" 
03.
for /f "delims=" %%s in ('dir /b /a-d *.pdf') do ( 
04.
	for /f "usebackq delims== tokens=1,2" %%m in ("Liste.txt") do ( 
05.
		if "%%~ns"=="%%m" echo ren "%%s" "%Verzeichnis%_%%n%%~xs" 
06.
07.
08.
pause 
09.
goto :eof
Nun, dies ist abstrakt für deinen einen Ordner ausgelegt, ich befürchte zwar, dass du nachher ganze Verzeichnisstrukturen damit abarbeiten willst aber schauen wir mal, ob dem wirklich so ist ^_^

Das echo in Zeile 5 dient erst einmal zum look-what-you-see, wenn du es entfernst, wird gearbeitet.

greetz André
Bitte warten ..
Mitglied: Friemler
19.07.2011 um 20:26 Uhr
Hallo Heinzel,

und hier noch eine Version, bei der Du ohne externe Datei auskommst:
01.
@echo off 
02.
 
03.
setlocal enabledelayedexpansion 
04.
 
05.
 
06.
set "Expressions=LKW PKW BC DR" 
07.
set "ReplaceExp=Lastkraftwagen Personenkraftwagen "Bobby Car" Dreirad" 
08.
 
09.
 
10.
for %%d in (.) do set "HomeDir=%%~nd" 
11.
 
12.
for /f "delims=" %%f in ('dir /b /a:-d *.pdf') do ( 
13.
  set /a Cntr=0 
14.
  set "Exp=%%~nf" 
15.
 
16.
  for %%e in (%Expressions%) do ( 
17.
    set /a Cntr+=1 
18.
 
19.
    if "%%~nf" equ "%%~e" ( 
20.
      set /a Cntr2=0 
21.
 
22.
      for %%r in (%ReplaceExp%) do ( 
23.
        set /a Cntr2+=1 
24.
 
25.
        if !Cntr2! equ !Cntr! ( 
26.
          set "Exp=%%~r" 
27.
28.
29.
30.
31.
 
32.
  ren "%%f" "%HomeDir%_!Exp!%%~xf" 
33.
)
Die Begriffe und ihre Ersetzungen werden in den Zeilen 6 und 7 eingetragen. Die Reihenfolge muss in den beiden Zeilen korrespondieren. Wenn Leerzeichen vorkommen sollten, muss der Begriff, wie hier im Beispiel Bobby Car, in Anführungszeichen eingeschlossen werden.

Gruß
Friemler
Bitte warten ..
Mitglied: Heinzel
21.07.2011 um 08:42 Uhr
Vielen Dank


Im Prinzip find ich das Prinzip mit der externen Datei gar nicht schlecht, allerdings werden bei dirm (Skyemugen) ateien, die nicht in der Liste sind, nicht umbenannt.
Aber deines (Friemler) funktioniert perfekt.

Ich danke euch nochmal vielmals für eure Hilfe, das nimmt mir einiges an Arbeit ab

lg
Bene / Heinzel
Bitte warten ..
Mitglied: Skyemugen
21.07.2011 um 09:24 Uhr
Zitat von Heinzel:
Im Prinzip find ich das Prinzip mit der externen Datei gar nicht schlecht, allerdings werden bei dirm (Skyemugen) ateien, die nicht in der Liste sind, nicht umbenannt.

Aloha,

I know, I know, ich hatte wieder nur halb gelesen und mir fiel später auf, dass es ja noch PDFs gibt, die keine Kürzel haben, also habe ich einfach das Moped=Moped dazugemogelt, dachte mir: Ah, wenn er schon eine Liste anlegen muss, macht das auch nichts mehr aus *fg*. Abends im Urlaub darf man dann auch noch einmal faul sein ^_^ und da Friemler dann kurz darauf eh etwas passenderes postete, hab ich mir die Überarbeitung dann auch gespart

greetz André

P.S.: Ich hoffe, man hat nicht irgendwann 50 Ersetzungen, wird das eine nette Variable *gg*
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Spezifische Datei aus Unterordner per batch kopieren und umbenennen (windows XP)

Frage von GeneralChewieBatch & Shell3 Kommentare

Hallo, Nach langer (erfolgloser) Suche im Forum stelle ich nun selbst die Frage. Das Problem: Ich möchte per Batch ...

Batch & Shell

Dateien Umbenennen

gelöst Frage von PLBot85Batch & Shell6 Kommentare

Hi, ich habe einen Ordner wo mehrer Dateien drin liegen. 20150316_121757_92636382965528_WMA1847GK62_TDOBB112.ddd 20150314_085730_73826383950256_WMA18263926_TDOBB236.ddd etc Die sollen jetzt mittels einer Batchdatei ...

Batch & Shell

Dateien verschieben und umbenennen

gelöst Frage von eazy-isiBatch & Shell12 Kommentare

Hallo zusammen, ich stehe vor folgender Herausforderung. Ich muss aus einem Verzeichnis Dateien in ein anderes Verzeichnis verschieben und ...

Viren und Trojaner

WannaCry - wiederhergestellte Dateien umbenennen

Frage von MasterPhilViren und Trojaner7 Kommentare

Hallo Zusammen, ich habe hier einen mit WannaCry verschlüsselten PC - die Dateien sind soweit wieder da und auch ...

Neue Wissensbeiträge
Sonstige Systeme
Es war einmal ein BeOS - Wer erinnert sich noch?
Information von BassFishFox vor 21 StundenSonstige Systeme4 Kommentare

Hallo, Bin gerade ueber Haiku gestolpert, von dessen Existenz als "Nachfolger des BeOS" ich wusste nur mich nie wirklich ...

Datenschutz

Microsoft und DSGVO - ob das wohl jemals klappt (Probleme beim Datenabfluss für Office Pro Plus)?

Tipp von VGem-e vor 1 TagDatenschutz3 Kommentare

Servus Kollegen, siehe Aber wer setzt schon MS Office Pro Plus ein? Wie dann der Stand beim "normalen" MS ...

Windows 10

Macht Windows 10.1809 Probleme mit gemappten Netzlaufwerken (betrifft wohl insbes. AMD-Hardware und Trend Micro AV-Produkte)?

Tipp von VGem-e vor 1 TagWindows 103 Kommentare

Moin Kollegen, grad dazu gefunden und Hatten wir dies nicht bei früheren W10-Upgrades ebenfalls? Da bleibt nur, das Upgrade ...

Humor (lol)

Das neue Miniatur Wunderland OFFICIAL VIDEO - worlds largest model railway - railroad

Information von StefanKittel vor 1 TagHumor (lol)2 Kommentare

Hallo, wer noch nie im Miniatur Wunderland war, sollte es dringend mal nachholen. Es gibt eine neues Video. Viele ...

Heiß diskutierte Inhalte
Netzwerkgrundlagen
Werksreset HP 1920S-24G
gelöst Frage von HenereNetzwerkgrundlagen14 Kommentare

Servus zusammen, ich habe mir 2 neue Switche zugelegt, doch ich komme damit nicht ganz klar. Waren Vorführgeräte zum ...

DSL, VDSL
DSL Monitoring Tool - Quick and dirty?
Frage von george44DSL, VDSL14 Kommentare

Liebe Gemeinde, ich suche ein einfaches und vor allem schnell zu installierendes Monitoring-Tool zur kontinuierlichen Dokumentation (nur) der Internetanbindung. ...

Firewall
Sophos UTM 9.5 Firewall Log-File durchsuchen
gelöst Frage von Leo-leFirewall13 Kommentare

Hallo zusammen, weiß jemand von Euch, ob man bei der Sophos die Firewall logs noch etwas besser filtern kann? ...

LAN, WAN, Wireless
Gäste-WLAN durch DD-WRT AP nach einem MikroTik Routerboard
Frage von NukolarLAN, WAN, Wireless12 Kommentare

Hallo, wie der Titel schon sagt möchte ich gerne ein Gäste-WLAN innerhalb eines bestehenden LANs einrichten. Dass die Gäste ...