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

For f spuckt wirres Zeug aus

Frage Entwicklung Batch & Shell

Mitglied: Daffman

Daffman (Level 1) - Jetzt verbinden

17.06.2010 um 11:25 Uhr, 3175 Aufrufe, 2 Kommentare

Ich versuche aus einer Datei gewisse Zeichenketten in eine Variable umzuformen, aber, die variablen, die ich bekomme sind unbrauchbar.

hallo mit einandern!!

ich habe mich schon einmal an die community gewendet und zwar wegen dem befehl for /f!

also meine ausgangsdatei ist:
01.
---------- 22  
02.
Name</key><string>Super Trooper</string>  
03.
Artist</key><string>ABBA</string>  
04.
Album</key><string>Gold Greatest Hits</string>  
05.
Genre</key><string>Pop</string>  
06.
Play Count</key><integer>8</integer>  
07.
Rating</key><integer>60</integer> 
so meine von mir geschrieben batch ist:

01.
for /F "tokens=1,2,3 skip=1 delims=/" %%a in ('findstr /n . "4.tmp"') do ( 
02.
set "z=%%a" 
03.
set "b%%a=%%b" 
04.
set "c%%a=%%c" 
05.
set "d%%a=%%d" 
06.
)
bis dahin sehe ich noch keinen fehler, aber die ausgabe ist einfach nur noch wischiwaschi

01.
D:\z>for /F "tokens=1,2,3 skip=1 delims=/" %a in ('findstr /n . "4.tmp"') do ( 
02.
set 'z=%a' 
03.
 set b%a=%b 
04.
 set c%a=%c 
05.
 set d%a=%d 
06.
07.
 
08.
D:\z>( 
09.
set 'z=2:Name<' 
10.
 set b2:Name<=key><string>Super Trooper< 
11.
 set c2:Name<=string> 
12.
 set d2:Name<=%d 
13.
14.
 
15.
D:\z>( 
16.
set 'z=3:Artist<' 
17.
 set b3:Artist<=key><string>ABBA< 
18.
 set c3:Artist<=string> 
19.
 set d3:Artist<=%d 
20.
21.
 
22.
D:\z>( 
23.
set 'z=4:Album<' 
24.
 set b4:Album<=key><string>Gold Greatest Hits< 
25.
 set c4:Album<=string> 
26.
 set d4:Album<=%d 
27.
28.
 
29.
D:\z>( 
30.
set 'z=5:Genre<' 
31.
 set b5:Genre<=key><string>Pop< 
32.
 set c5:Genre<=string> 
33.
 set d5:Genre<=%d 
34.
35.
 
36.
D:\z>( 
37.
set 'z=6:Play Count<' 
38.
 set b6:Play Count<=key><integer>8< 
39.
 set c6:Play Count<=integer> 
40.
 set d6:Play Count<=%d 
41.
42.
 
43.
D:\z>( 
44.
set 'z=7:Rating<' 
45.
 set b7:Rating<=key><integer>60< 
46.
 set c7:Rating<=integer> 
47.
 set d7:Rating<=%d 
48.
)
ich hätte gerne dass z nur die zeilennummer ist; und der rest sich immer schön bei / teilt!

kann mir jemand helfen und mich eventuell aufklären, worin der fehler liegt?? -.-

Mit freundlichen Grüßen alexander
Mitglied: bastla
17.06.2010 um 12:33 Uhr
Hallo Daffman!

Irgendwie ist es für mich schwer vorstellbar, dass Du als Ergebnis
Name< 
key><string>Super Trooper< 
string>
haben möchtest ...

... aber falls doch, einfach noch den ":" als zusätzlichen Delimiter verwenden, also:
for /F "skip=1 tokens=1-4 delims=/:" %%a in ('findstr /n . "4.tmp"') do (
Grüße
bastla

P.S.: Mir wäre eher
for /f "skip=1 tokens=1,2,5 delims=:<>" %%a in ('findstr /n . "4.tmp"') do (
dazu eingefallen ...
Bitte warten ..
Mitglied: Daffman
17.06.2010 um 13:51 Uhr
hello

danke für deine rasche hilfe!! und dein zweiter vorschlag ist ideal, den habe ich eigentlich auch vorgehabt, nur nicht so vereinfacht wie du das jetzt dargestellt hast :-x

also vielen dank und erfüllt genau meine wünsche!!

Mit freundlichen Grüßen alex
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (23)

Frage von patz223 zum Thema Windows Userverwaltung ...

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

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

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

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

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...