Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Bestimmte Zeile - ab bestimmter Position XY einer Textdatei als Dateinamen verwenden

Frage Entwicklung Batch & Shell

Mitglied: Experiment626

Experiment626 (Level 1) - Jetzt verbinden

22.07.2007, aktualisiert 22:39 Uhr, 5995 Aufrufe, 4 Kommentare

Wie kann ich aus einer Textdatei (Bef12345.txt /Txt-Datei immer verschieden, aber nach dem Muster Bef*.txt) an immer der selben Zeile (21) den Name und Geburtstatum als Dateinamen verwenden, wobei ich am liebsten das Format 14061968_Mustermann, Karl hätte.
Die Zeile ist immer wie folgt aufgebaut.

" Patient: Mustermann, Karl *14.06.1968"

9 Leerzeichen stehen vor Patient: sind immer da und die Position des Geburtstags (* Postion 56) ist immer an der gleichen Stelle, wie angegeben - es sind aber keine Anführungszeichen vorhanden.

Ich hab vergeblich aus anderen Forenmeldungen etwas abzuwandeln - habs nicht hinbekommen.
Bewunderswert, wie einige soviel mit FOR und FINDSTR rausholen könne, ich kanns nicht.
Für Eure Hilfe vielen Dank.

Stitch
Mitglied: miniversum
22.07.2007 um 10:36 Uhr
Versuchs mal damit (ungetestet, erst an ner Kopie versuchen!!!):
01.
@echo off & setlocal enabledelayedexpansion 
02.
for /F "delims=" %%F in ('dir /b /a-D Bef*.txt') do ( 
03.
set "Line=" 
04.
for /F "skip=20 delims=" %%L in ("%%F") do if not defined Line set Line=%%L 
05.
for /F "tokens=2,3,5,6,7 delims= ." %%N in ('echo !Line!') do set "newname=%%P%%Q%%R_%%N %%O" 
06.
ren "%%F" "!newname!" 
07.
)
miniversum
Bitte warten ..
Mitglied: Experiment626
22.07.2007 um 11:25 Uhr
Hallo vielen dank erstmal,
aber ich bekomme folgende Meldung:

"."" ist syntaktisch an dieser Stelle nicht verarbeitbar.
Falscher Parameter.
"."" ist syntaktisch an dieser Stelle nicht verarbeitbar.
Falscher Parameter.

Danke.
Bitte warten ..
Mitglied: miniversum
22.07.2007 um 12:47 Uhr
ok nachmal geprüft udn diesmal auch getestet:
01.
@echo offfor /F "delims=" %%F in ('dir /b /a-D Bef*.txt') do call:ProzFile "%%F" 
02.
goto:eof 
03.
 
04.
:ProzFile 
05.
set "Line=" 
06.
for /F "skip=20 delims=" %%L in (%~1) do if not defined Line set Line=%%L 
07.
for /F "tokens=2,3,4,5,6 delims=.* " %%N in ('echo %Line%') do set "newname=%%P%%Q%%R_%%N, %%O" 
08.
ren "%~1" "%newname%%~x1" 
09.
goto:eof
Bitte warten ..
Mitglied: Experiment626
22.07.2007 um 22:39 Uhr
Ich kann einfach nur sagen - echt spitze. Genauso habe ich mir das vorgestellt.

Hab vielen Dank für Deine schnelle Hilfe.

Stitch
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
VB for Applications
gelöst Vbscript bestimmte Zeile ungeachtet der Nummerierung löschen (4)

Frage von aletri zum Thema VB for Applications ...

Netzwerke
VPN nur für bestimmte Port(s) verwenden unter Win10 (1)

Frage von Bluebrain zum Thema Netzwerke ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...