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

automatisiertes Übertragen von Dateinamen auf andere Dateien (nach String im Namen)

Mitglied: ph303

ph303 (Level 1) - Jetzt verbinden

29.03.2006, aktualisiert 19:34 Uhr, 6348 Aufrufe, 4 Kommentare

Hallo zusammen!

Ich bin in Sachen Batch Programmierung leider nicht so fit & würde gerne folgende Aufgabe lösen:

ich möchte die Dateinamen von bestehenden Dateien automatisiert auf andere übertragen, wobei der komplette Dateiname der (.jpg) Ausgangsdatei der z.B. die 01 enthält auf die bmp Datei übertragen werden soll die im Namen 001 enthält (02 dann auf die .bmp Datei mit 002 im Dateinamen enthält usw.).

ein Beispiel:

der Ordner enthält z.B. die Dateien

party am see (augsburg1)_01_.jpg
geburtstag stephan (muenchen2)_02_.jpg
abschlussfeier (augsburg3)_03_.jpg

und

pic 001.bmp
pic 002.bmp
pic 003.bmp

das Ergebniss soll folgendes sein:

party am see (augsburg)-01-.bmp
geburtstag stephan (muenchen)-02-.bmp
abschlussfeier (augsburg)-03-.bmp

Schon mal besten Dank im vorraus!

Philipp
Mitglied: Biber
29.03.2006 um 12:46 Uhr
Moin Philpp,

wenn die Dateimaske für alle *.jpg-Dateien gleich "*_??_.jpg" ist, könnte es so gehen:

::--- RenPic00x.bat
@echo off & setlocal
for /f %%i in ('dir /b "*_??_.jpg"') do call :BmpRename "%%~ni"
:goto :eof

:BmpRename
Set "jpgName=%~1"
set "bmpname=pic 0%jpgname:~-3,2%.bmp"
IF exist "%bmpname% ren "%bmpname%" "%jpgname%.bmp"
goto :eof

:: RenPic00x.bat
Bitte warten ..
Mitglied: ph303
29.03.2006 um 14:35 Uhr
Hallo Biber,

vielen Dank für Deine schnelle Antwort! Ich habe mal testweise leere Files so erzeugt wie ich sie in dem Beispiel angegeben habe, hatte aber mit dem Umbenennen mit der Batch noch keinen Erfolg.

Ich werde mit Deinem Code weiter rumspielen sobald ich von der Arbeit heimkomme.

Viele Grüße

Philipp
Bitte warten ..
Mitglied: Biber
29.03.2006 um 18:46 Uhr
Ach Philipp,

wie nicht anders zu erwarten war, liegt es wieder am Nicht-Testen...sorry.

1. Lesefehler: Deine *.jpgs enden mit "...-nn-.jpg" statt "..._nn_.jpg

2. Denkfehler: Ich dachte natürlich, dass -wenn ich mit "%%~ni" nach dem Namen der *.jpg-Datei frage, der ganze Name zurückkommt. Aber bei dem "party"-Beispiel oben käme aber nur der Teil des Namens bis zum ersten Leerzeichen.

3. Tippfehler: Statt ":goto :eof" natürlich nur "goto :eof"

4. Erweiterung: wenn KEINE Dateien mit dem Dateimuster da sind, dann soll er nicht rummaulen. Also "Fehler-"Meldung "Datei nicht gefunden" unterdrücken.

So funktioniert es besser:
01.
::--- RenPic00x.bat 
02.
@echo off & setlocal 
03.
if exist "*-??-.jpg" for /f "delims=" %%i in ('dir /b "*-??-.jpg"') do call :BmpRename "%%~ni" 
04.
goto :eof 
05.
 
06.
:BmpRename 
07.
Set "jpgName=%~1" 
08.
set "bmpname=pic 0%jpgname:~-3,2%.bmp" 
09.
IF exist "%bmpname%" echo ren "%bmpname%" "%jpgname%.bmp" 
10.
goto :eof 
11.
:: RenPic00x.bat
(Annahme: Batch wird in dem Verzeichnis gestartet, wo die *.jpgs/*.bmps sind)

Gruß
Biber

[Edit]
5) ALT: IF exist "%bmpname% echo ren ....
Besser : IF exist "%bmpname%" ren ....

Dann komme ich zur Ausgabe:

$md$renpic001.bat
ren "pic 001.bmp" "party am see (augsburg)-01-.bmp"
[/Edit]
Bitte warten ..
Mitglied: ph303
29.03.2006 um 19:34 Uhr
Hi Biber,

vielen Dank für den reply. Noch weigert sich die batch bei mir (auch mit dem neuen
code) die files umzubenennen - aber das ganze hilft mir schon mal sehr als Ausgangsbasis,
ich werde morgen mit dem Code noch weiter rumspielen.

Viele Grüße

Philipp
Bitte warten ..
Ähnliche Inhalte
Microsoft

Batchdatei: Dateien nach String durchsuchen, Dateinamen in .txt speichern

gelöst Frage von elcheffe123Microsoft22 Kommentare

Ahoi! Der Titel sagt eigentlich schon alles. Ich möchte eine Batchdatei schreiben, die im aktuellen Ordner( unbekannte anzahl an ...

Batch & Shell

Batch um String innerhalb Dateiname zu ändern

gelöst Frage von lordofremixesBatch & Shell3 Kommentare

Hallo zusammen, Ich suche eine Batch / Powershell, die folgendes macht: Ausgangslage: Ordner mit ca 100 Dateien in z.B. ...

Batch & Shell

Dateinamen mit gleichem String in einen Ordner schieben, den Ordner nach String benennen

Frage von medi2008Batch & Shell12 Kommentare

Einen Gruss an alle Forumser ! Nach vergeblicher Suche wende ich mich an euch mit meiner Frage. Auf einem ...

Batch & Shell

Dateien automatisch anhand von 2 komplizierten Dateinamen-Strings verschieben

gelöst Frage von clevermBatch & Shell3 Kommentare

Hallo, ich bräuchte eine Batch oder Batch-Powershell Kombination, die mir 1.000ende Dateien täglich anhand des Dateinamens verschiebt (einsortiert): Ich ...

Neue Wissensbeiträge
Drucker und Scanner
HP-MF-Drucker per Fax angreifbsr
Information von Lochkartenstanzer vor 1 TagDrucker und Scanner3 Kommentare

Endlich eine sinnvolle Verwendung für Faxe: Damit kann man offensichtlich den Drucker übernehmen. lks

Router & Routing

Das pfSense Buch ist jetzt für jeden kostenlos zu beziehen

Tipp von magicteddy vor 2 TagenRouter & Routing2 Kommentare

Bisher war das Buch nur für zahlende Unterstützer verfügbar, jetzt steht für Jedermann kostenlos zur Verfügung. Siehe auch The ...

Firewall

Möglicherweise neue Sicherheitslücke in Mikrotik-Firmware

Information von LordGurke vor 4 TagenFirewall3 Kommentare

Hallo zusammen, vor ein paar Monaten gab es ja bereits eine Sicherheitslücke in der Firmware von Mikrotik-Routern, über welche ...

Erkennung und -Abwehr
Rechner hacken mit Cortana, auch Remote
Information von Lochkartenstanzer vor 5 TagenErkennung und -Abwehr3 Kommentare

heise berichtet über den Vortrag von der Blackhat Open Sesame: Picking Locks with Cortana. Einige Fehler sind schon gefixt, ...

Heiß diskutierte Inhalte
Windows 10
WIN 10 1803 - LTE Stick kein Internetzugriff
Frage von killtecWindows 1023 Kommentare

Hallo, ich habe mit einem Windows 10 1803 Probleme mit einem LTE-Stick. Das gleiche Problem ist bei mehreren Rechnern ...

CPU, RAM, Mainboards
Xeon E5620: noch schnell genug?
Frage von ahussainCPU, RAM, Mainboards19 Kommentare

Hallo allerseits, ich habe die Möglichkeit, aus Restbeständen einen Tower mit Xeon E5620 CPU und 24 GB RAM zu ...

Datenbanken
MySQL Datenbank Import Aufgabe für mehrere .csv dateien
Frage von Marcel1989Datenbanken18 Kommentare

Hi, ich komm nicht weiter. Ich hab auf einem Windows Server 2012 r2 eine MariaDB/MySQL laufen. Nun soll diese ...

Windows Server
Remote Desktop Services User Profile Disk - DFS
Frage von einzelkindWindows Server16 Kommentare

Hallo Miteinander, ich richte gerade eine neue RDS Farm auf Basis von Windows Server 2016 ein. Von Server 2012 ...