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

Batch - Dateiname aus Datei auslesen

Frage Entwicklung Batch & Shell

Mitglied: dol123

dol123 (Level 1) - Jetzt verbinden

19.06.2007, aktualisiert 12:32 Uhr, 11594 Aufrufe, 4 Kommentare

Hallo,

hab einen Ordner in den täglich mehrere Dateien mit fortlaufender Nummer geschrieben werden.
Bei allen Dateien steht in der zweiten Zeile eine Kontonummer (10 stellig, mit führenden Nullen) mit #EUR angehängt; Beispiel: 0000123456#EUR.

Nun würde ich per Batch gerne die Datei umbenennen, so das die Kontonummer als Dateiname verwendet wird. Ob mit oder ohne dem #EUR ist mir eigentlich egal - schöner wäre zwar ohne - muss aber nicht sein.
Beispiel: aus STA0781.STA sollte 0000123456.STA oder 0000123456#EUR.STA werden.

Bei den Dateien handelt es sich um .STA Dateien - diese kann ich mit dem Editor jedoch problemlos öffnen und bearbeiten.

Hab zu dem Thema bereits einige Beiträge gefunden. Habs leider nicht geschafft eine der dort genannten Lösungen für meine Bedürfnisse umzubauen.


Danke an alle die Antworten!
Mitglied: bastla
19.06.2007 um 11:43 Uhr
Hallo dol123 und willkommen im Forum!

Versuch es mit folgender Batchdatei ("Umbenennen.bat"):
01.
@echo off & setlocal 
02.
set Nr= 
03.
for /f "delims=#" %%i in ('more +1 "%~1"') do if not defined Nr set Nr=%%i 
04.
if defined Nr if not exist "%~dp1%Nr%%~x1" ren "%~1" "%Nr%%~x1"
Beim Aufruf ist die umzubenennende Datei als Argument zu übergeben (auch per Drag and Drop aus dem Explorer möglich), also etwa
01.
Umbenennen.bat STA0781.STA
Falls eine Datei mit dem neuen Namen bereits existiert, wird nicht umbenannt. Was sollte in diesem Fall in einer Endfassung passieren?

Grüße
bastla

[Edit] Berücksichtigung von Pfaden ergänzt [/Edit]
Bitte warten ..
Mitglied: dol123
19.06.2007 um 12:00 Uhr
Danke für die sehr schnelle und hilfreiche Antwort!!

Die Batch funktioniert so weit fehlerfrei. Perfekt wäre es wenn:

- evtl. vorhandene Dateien einfach überschrieben würden.
- der Dateiname nicht beim Aufruf mit übergeben werden müsste, sondern alle Dateien in diesem Ordner nacheinander abgearbeitet werden.


Nochmals Danke für die Hilfe !
Bitte warten ..
Mitglied: bastla
19.06.2007 um 12:13 Uhr
Hallo dol123!

Vielleicht so:
01.
@echo off & setlocal 
02.
set "Ordner=D:\STADaten" 
03.
set "Typ=sta" 
04.
cd /d "%Ordner%" 
05.
for %%f in (*.%Typ%) do call :ProcessFile "%%f" 
06.
goto :eof 
07.
:ProcessFile 
08.
set Nr= 
09.
for /f "delims=#" %%i in ('more +1 "%~1"') do if not defined Nr set Nr=%%i 
10.
if defined Nr move /y "%~1" "%Nr%.%Typ%"
Grüße
bastla
Bitte warten ..
Mitglied: dol123
19.06.2007 um 12:32 Uhr
Erster Test erfolgreich.

Ein großes DANKE für die schnelle Hilfe !!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
In einer Batch-Datei einen variablen Teil eines Dateinamens auslesen
gelöst Frage von dh0815Batch & Shell5 Kommentare

Hallo Leute, das ist mein erster Post hier und ich möchte mich vorab schon dafür entschuldigen, wenn ich etwas ...

Batch & Shell
Batch: Dateiname abhängig vom Änderungsdatum auslesen
gelöst Frage von freaktastischBatch & Shell6 Kommentare

Servus zusammen, hab folgende Situation Oberordner: beinhaltet test.bat, Ordner1 und Ordner2 Ordner1, sowie Ordner2 beinhalten .docx Dateien. Mein Anliegen ...

Batch & Shell
Batch: Auslesen von Dateinamen aus Text und Kopieren dieser.
gelöst Frage von gumpo03Batch & Shell2 Kommentare

Hallo. Ich sitze seit ungefähr einer Stunde an einem Problem, dass ich gern endlich lösen würde: Ich habe eine ...

Batch & Shell
Dateinamen mit Batch-Datei ändern - Problem
gelöst Frage von fffffuuuuuuuhhhhBatch & Shell9 Kommentare

Hallo zusammen, ich, stelle regelmäßig .mp3-Dateien her, die folgendermaßen von meinem Audioprogramm beschriftet wird: Das Ergebnis soll aber folgendermaßen ...

Neue Wissensbeiträge
Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 22 StundenMicrosoft Office8 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 1 TagDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

SAN, NAS, DAS

Backdoor Zugang und Upload-Bug in vielen Western Digital MyCloud Geräten

Information von Frank vor 1 TagSAN, NAS, DAS2 Kommentare

James Bercegay von der Firma Gulftech hat die Fehler an Western Digital gemeldet und das Unternehmen stellt bereits ein ...

Microsoft Office

Outlook 2016 - Beim Weiterleiten keine PDF Anhänge mehr - KB4011626 entfernen

Erfahrungsbericht von Deepsys vor 1 TagMicrosoft Office3 Kommentare

Wenn ihr feststellt das ihr beim Weiterleiten von E-Mails keine PDF Anhänge mehr versendent, dann dankt Microsoft. Diese tolle ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

iOS
Einladung vom iphone kalender
Frage von jensgebkeniOS15 Kommentare

Hallo Gemeinschaft, folgendes Problem - immer wenn ich von meinem Iphone einen Termin einztrage und diesem Termin Teilnehmer zuweise, ...

Windows Netzwerk
Drucker isolieren in Windows Domäne
gelöst Frage von lcer00Windows Netzwerk14 Kommentare

Hallo zusammen, habe eine Windows-AD (2012R2) in der es einen Druckerserver gibt. Mittlerweile verliere ich das Vertrauen in die ...

Drucker und Scanner
Gesucht DIN A3 Drucker
Frage von NebellichtDrucker und Scanner14 Kommentare

Hallo, ich möchte einen neuen DIN A3 Drucker kaufen. Um ab und zu, ca. 1 mal die Woche Farbausdrucke ...