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, 6364 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
Batch & Shell
String in Datei umbennen
gelöst Frage von DarkatohmBatch & Shell3 Kommentare

Hallo zusammen, ich versuche ein Batch-Skript zu schreiben, bei dem ich einen String in einer Datei umbenennen kann. Hierzu ...

Windows Server
Netstat automatisiert auswerten?
gelöst Frage von lcer00Windows Server5 Kommentare

Hallo, ich stehe vielleicht ein bisschen auf dem Schlauch ich benötige eine Liste der Prozesse eines Servers, die an ...

Batch & Shell

Text Datei bis bestimmten String kopieren und auslagern

Frage von SKBadoxBatch & Shell4 Kommentare

Hallo zusammen, wie der Titel schon sagt suche ich nach einem .bat Skript dass vom Anfang der .txt Datei ...

Microsoft Office

Makros automatisiert signieren?

Frage von ITboonMicrosoft Office8 Kommentare

Guten Morgen, Meine Frage: Kann man Makros automatisiert signieren? Der Hintergrund: In meinem Unternehmen habe ich alle Makros deaktiviert ...

Neue Wissensbeiträge
Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 2 StundenInternet1 Kommentar

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 6 StundenWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 1 TagWindows 102 Kommentare

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Sicherheit

Heise Beitrag Passwort-Sammlung mit 773 Millionen Online-Konten im Netz aufgetaucht

Information von Penny.Cilin vor 1 TagSicherheit6 Kommentare

Auf Heise Online ist folgender Beitrag veröffentlicht worden: Heise Beitrag passwörter geleakt Ich bin mir jetzt nicht ganz sicher, ...

Heiß diskutierte Inhalte
Windows Server
Uhren gehen immer wieder falsch
Frage von killtecWindows Server23 Kommentare

Hallo, ich habe folgende Konstellation: 1. Physischer DC Div. Virtuelle DC's auf Hyper-V Servern Die Hyper-V-Server, der Physische DC ...

Switche und Hubs
Medienkonverter mit 12 oder 24 Ports gesucht
Frage von wmuellerSwitche und Hubs23 Kommentare

Guten Morgen, ich bin auf der Suche nach einem größeren Medienkonverter, der "stumpf" 1:1 die Ports auf über ein ...

Batch & Shell
Mit findstr batch doppelte zeilen einer txt löschen
Frage von Burningx2Batch & Shell21 Kommentare

Hi Vor einer weile habe ich im netzt einen windows shell befehl gefunden mit welchem man über die konsole ...

Windows Server
Client in die Domäne einbinden - Allgemeine Frage dazu
gelöst Frage von RalphTWindows Server19 Kommentare

Moin, ich habe 2 DCs in einer Hauptstelle und 2 DCs in einer Nebenstelle. Ich bringe in der Hauptstelle ...