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

Guru Skill für TXT auslesen

Frage Entwicklung Batch & Shell

Mitglied: caprifischer

caprifischer (Level 1) - Jetzt verbinden

13.04.2007, aktualisiert 17:17 Uhr, 4063 Aufrufe, 3 Kommentare

Hallo Batch-Guru´s

ich hab da ein problem mit dem auslesen von ner text-tatei die ein output von ner datenbank ist und
wo ich den output nur so bekomme und ned anders (hät ich auch gerne).
ziel ist es die userid´s zu bestimmen und untereinander in ne txt-datei zu schreiben.


hier mal der output:
01.
============== 
02.
 
03.
TABLE OF USER-IDENTIFICATIONS:  
04.
  
05.
USERID      STATE  KTID   PORT   REPORT   CLASS  AD PROG  
06.
------------+--------+------+------+-----------+---------+--------------------------  
07.
LASA7600    TRUE   9       12      1              ADMIN   2 + 3 + 4 + 5 + 6 + 7 +  
08.
                                                                               8 + 9 + 10+ 11+ 12+ 13+  
09.
                                                                               14+ 15+ 16+ 17+ 18+ 19+  
10.
                                                                               20+ 21+ 22+ 23+ 24+ 25+  
11.
ADAO7621    TRUE   7       14     1              ADMIN    2 + 3 + 4 + 5 + 6 + 7 +  
12.
TREO7671    TRUE   4       44     1              ADMIN    2 + 3 + 4 + 5 + 6 + 7 +  
13.
MARA7643    TRUE   3       41     1              ADMIN    2 + 3 + 4 + 5 + 6 + 7 +  
14.
ERPO7610    TRUE   5       29     1              ADMIN    2 + 3 + 4 + 5 + 6 + 7 +  
15.
                                                                                8 + 9 + 10+ 11+ 12+ 13+  
16.
                                                                               14+ 15+ 16+ 17+ 18+ 19+  
17.
                                                                               20+ 21+ 22+ 23+ 24+ 25+  
18.
                                                                               26+ 27+ 28+ 29+ 30+ 31+  
19.
                                                                               32+ 33+ 34+ 35+ 40       
20.
META7611    TRUE   2      19     1                ADMIN  2 + 3 + 4 + 5 + 6 + 7 +  
21.
                                                                               8 + 9 + 10+ 11+ 12+ 13+  
22.
                                                                              14+ 15+ 16+ 17+ 18+ 19+  
23.
                                                                              20+ 21+ 22+ 23+ 24+ 25+  
24.
                                                                              26+ 27+ 28+ 29+ 30+ 31+  
25.
 
(hier nochmal als jpg da die Formatierung wichtig ist und sie oben verhauen wird)

8ff2ed25c764ce2c025f3df8bcbfb84e-table - Klicke auf das Bild, um es zu vergrößern


und das sollte dabei rauskommen

LASA7600
ADAO7621
TREO7671
MARA7643
ERPO7610
META7611


ich hab schon mit ein paar sehr wilden for-strings rumexperimentiert aber dabei ist nix brauchbares rausgekommen.

hat jemand ne tip für mich wie ich so ein problem auf nen XP-SP2-rechner als batch zu schaffen ist.

bin für jede anregung dankbar.


gruß
caprifischer
[Edit Biber] Code-Formatierung ergänzt. Siehe unten [/Edit]
Mitglied: bastla
13.04.2007 um 15:39 Uhr
Hallo caprifischer und willkommen im Forum!

Da anscheinend gerade keine Gurus in der Gegend sind, versuche ich es mal :
01.
@echo off & setlocal enabledelayedexpansion 
02.
for /f "skip=4 delims=" %%i in (test.txt) do set "Zeile=%%i" & if "!Zeile:~0,8!" neq "        " echo !Zeile:~0,8!
Falls die Annahme, dass der Username eine fixe Länge von 8 Zeichen hat, nicht zutreffen sollte, sehen wir weiter ...

Grüße
bastla
Bitte warten ..
Mitglied: caprifischer
13.04.2007 um 16:31 Uhr
Hi bastla,

danke für die schnelle und freundliche begrüßung.

ne sache ist hier nicht richtig - guru IST anwesend (zuminderst im verhältniss zu mir).

script tut !!

deine annahme mit 8 zeichen (oder weniger) ist richtig hatte es nur vergessen zu schreiben und deine umsetzung mit - neq " " - ist echt gut , wäre ich nie darauf gekommen, was mich auch brutal weit nach vorne bringt.


maga merci

caprifischer
Bitte warten ..
Mitglied: Biber
13.04.2007 um 17:17 Uhr
Moin caprifischer,

willkommen auch von mir.

Echt blöd, dass heute keine Gurus in der Nähe sind.. na ja, Freitag, der 13te halt.

Dann versuche ich mal, bastla zu unterstützen.

Alternative zu einem so komplexen Batch wäre folgendes vom CMD-Prompt:
01.
(=16:58:43  D:\temp=) 
02.
><b>for /f "skip=2" %i in ('findstr /R ^[A] userids.txt') do @echo %i</b> 
03.
LASA7600 
04.
ADAO7621 
05.
TREO7671 
06.
MARA7643 
07.
ERPO7610 
08.
META7611
--oder, wenn es denn ein Batch sein muss--
01.
:: snipp DispUserids.bat 
02.
@for /f "skip=2" %%i in ('findstr /R ^[A] userids.txt') do @echo %%i
01.
>DispUserIds.bat 
02.
LASA7600 
03.
ADAO7621 
04.
TREO7671 
05.
MARA7643 
06.
ERPO7610 
07.
META7611
...[Vorausgesetzt, diese Userliste heißt auch userIds.txt.]

Eine Anmerkung noch:
Die Formatierung mit Leerzeichen bleibt erhalten, wenn Du den Text mit den Tags < code > und < /code > formatierst.
Siehe in den FAQ unter "Formatierungen".

Gruss und schönes Wochenende
Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

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

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...