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, 5997 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 Per Vbscript bestimmte Zeile ungeachtet der Nummerierung prüfen (7)

Frage von aletri zum Thema VB for Applications ...

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
DSL, VDSL
gelöst DSL 200m verlängern (15)

Frage von Angela44 zum Thema DSL, VDSL ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

Exchange Server
gelöst DHCP Sever MS Server 2012 Problem (10)

Frage von Florian86 zum Thema Exchange Server ...