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

Mit Batch eine TXT datei auslesen

Frage Entwicklung Batch & Shell

Mitglied: 62992

62992 (Level 1)

18.03.2008, aktualisiert 22.03.2008, 6781 Aufrufe, 9 Kommentare

Hallo,
Also ich möchte eine datei auslesen der Daten über meinen Stamm bei www.die-stämme.de sind
das Problem ist: Es sind mehr Zeilen vorhanden als ich brauche
Beispiel:
01.
35860,Das+Imperium,%7CIMP%7C,9,9,4947,4947,1246 
02.
35126,Die+Gemeinschaft+des+Ringes,%7EDGDR%7E,2,2,818,818,1918 
03.
35489,Deiu+Buebe,DB,5,5,5159,5159,1232 
04.
36529,Maggots,666,1,1,369,369,2339 
05.
32583,Die+wilden+Kings,DwK,5,5,5094,5094,1237 
06.
24872,fd+stamm,fd,1,1,598,598,2071
Ich will jetz aber nur die daten die in der Zeile die mit 35860 anfängt finden und in eiene Varibale speichern.

PS: Die zeile die mit 35860 anfängt also 35860,Das+Imperium,%7CIMP%7C,9,9,4947,4947,1246 ist nicht immer die erste sondern irgendwo im dokoment also ich will:

1.Zeile mit "WORT" beginnt finden
2. Zeile mit "WORT" in eine Variable schreiben
Mitglied: bastla
18.03.2008 um 10:10 Uhr
Hallo MisterJojo und willkommen im Forum!

01.
for /f "delims=" %%i in ('findstr /b "35860," "D:\Deine Datei.txt"') do set "Zeile=%%i"
Grüße
bastla
Bitte warten ..
Mitglied: lowbyte1
18.03.2008 um 10:24 Uhr
helo
01.
@echo off 
02.
set "VAR= | type test.txt | find "36529"" 
03.
echo. %VAR% 
04.
pause
Bei mir kommt die meldung(warnung) von kaspersky das das ich eine RootShell öffne die die Dateieingabe/-ausgabe umleitet!

Diese meldung ignorieren!


lowbyte
Bitte warten ..
Mitglied: 62992
18.03.2008 um 10:33 Uhr
Danke bastla des funktioniert super
Lowbyte deins versteh ich nicht und es funktioniert auch nicht bei mir
aber drotzdem danke euch beiden für die schnelle Antwort hjat mir echt weiter geholfen
Bitte warten ..
Mitglied: 62992
18.03.2008 um 11:10 Uhr
Äh ich hab das jetzt soweit:


01.
@echo off 
02.
title Stammesdaten von Plutoniumgrill 
03.
echo Stammesdaten von Plutoniumgrill 
04.
 
05.
 
06.
for /f "delims=" %%i in ('findstr /b "18300," "ally.txt"') do set "Zeile=%%i" 
07.
echo %Zeile%>>zeile.txt 
08.
 
09.
 
10.
FOR /F "tokens=2 delims=, " %%i in (zeile.txt)Do echo %%i>>stammesname.txt  
11.
set/P name =<stammesname.txt 
12.
 
13.
echo Name 
14.
echo %name%  
15.
 
16.
pause

alerdings wird die Variable name an der Stelle
01.
echo Name 
02.
echo %name% 
Wieso funktionier das nicht kann sich das mal jemand durch lesen
Bitte warten ..
Mitglied: bastla
18.03.2008 um 11:21 Uhr
Hallo MisterJojo!

Vielleicht skizzierst Du einmal, was eigentlich das gewünschte Endergebnis sein soll - die Verwendung von Temporärdateien wäre bis hierher jedenfalls noch nicht nötig:
01.
@echo off & setlocal 
02.
title Stammesdaten von Plutoniumgrill 
03.
echo Stammesdaten von Plutoniumgrill 
04.
 
05.
for /f "delims=" %%i in ('findstr /b "18300," "ally.txt"') do set "Zeile=%%i" 
06.
FOR /F "tokens=2 delims=, " %%i in ("%Zeile%") Do set "Name=%%i" 
07.
 
08.
echo Name 
09.
echo %Name%
Grüße
bastla
Bitte warten ..
Mitglied: 62992
18.03.2008 um 11:51 Uhr
01.
for /f "delims=" %%i in ('findstr /b "18300," "ally.txt"') do set "Zeile=%%i"
Liest die Zeile mit allen Daten aus (sind inr folgender Reihenfolge vorhanden $id, $name, $tag, $members, $villages, $points, $all_points, $rank)
01.
FOR /F "tokens=2 delims=, " %%i in ("%Zeile%") Do set "Name=%%i"
Soll dan 2 Spalte also $name ausgeben und die anderen daten kann ich dan selber rausholen
Bitte warten ..
Mitglied: lowbyte1
20.03.2008 um 00:26 Uhr
helo


nur so nebenbei ....

01.
@echo off 
02.
set "VAR= | type test.txt | find "36529"" 
03.
echo. %VAR% 
04.
pause
das wurde von mir getestet und funktioniert ganz bestimmt.
syntax stimmt auch.

vileicht blockiert irgend ein programm auf deinem rechner, die ausführung von solchem code.


lowbyte
Bitte warten ..
Mitglied: Biber
20.03.2008 um 01:55 Uhr
Moin lowbyte1,

jein.... Du kommst zwar rein optisch zum gleichen Ergebnis, aber nur auf ganz schmalem Grat...

Die ganze Wahrheit [recherchiert am CMD-Prompt] ist:
01.
D:\temp>echo 12377>test2.txt 
02.
 
03.
D:\temp>echo 12345>>test2.txt 
04.
 
05.
D:\temp>set "VAR= | type test2.txt | find "12377"" 
06.
 
07.
D:\temp>echo %var% 
08.
12377 
09.
 
10.
D:\temp>set "VAR= | type test2.txt|find "12345"" 
11.
 
12.
D:\temp>echo %var% 
13.
12345
....soweit genau wie von Dir gepostet, aber nu...
01.
D:\temp>echo [%var%] 
02.
FIND: Parameterformat falsch 
03.
 
04.
D:\temp>echo %var%.. 
05.
FIND: Parameterformat falsch 
06.
 
07.
D:\temp>set v 
08.
VAR= | type test2.txt|find "12345"
Die letzte Zeile offenbart das Geheimnis. In %var% steht leider nicht das Ergebnis der Type/Find-Operation, sondern eine Befehlsfolge, die jedesmal beim Ansprechen von %var% aufgelöst/ausgeführt wird.
Du hast also quasi einen Alias/einen Mini-Makro definiert.
Und ein "echo %var%" wird so aufgelöst:
01.
D:\temp>echo | type test2.txt|find "12345" 
02.
12345
Na ja, vordergründig schon das geplante....

Grüße
Biber
Bitte warten ..
Mitglied: lowbyte1
22.03.2008 um 19:29 Uhr
hello biber

ja ich weis es biber dass das nicht gerade die feine art ist..
doch es funktioniert... obwohl man es nicht gerade verwenden sollte.

aber stimmts du mir zu, das es bei ihm trotzdem funktionieren sollte!?


cyu lowbyte
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Zeiten in .txt datei auslesen und Differenz berechnen (14)

Frage von meex87 zum Thema Batch & Shell ...

PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Batch & Shell
Per Batch eine XLS-Datei in eine TXT-Datei umwandeln (5)

Frage von skiing69 zum Thema Batch & Shell ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
CMS
Lokales Wordpress im LAN - wie aufsetzen? (16)

Frage von Static zum Thema CMS ...

Java
gelöst Net user per script aus txt oder csv für FTP (15)

Frage von OlliPWS zum Thema Java ...

Exchange Server
Microsoft Exchange Weiterleitung mit anderer primären E-Mail Adresse (14)

Frage von Rene12345 zum Thema Exchange Server ...

LAN, WAN, Wireless
IP im privaten Netz nicht erreichbar (14)

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