Top-Themen

Aktuelle Themen (A bis Z)

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 Problem mit for - Token falsch befüllt?

Mitglied: christiank

christiank (Level 1) - Jetzt verbinden

16.02.2008, aktualisiert 18:55 Uhr, 3685 Aufrufe, 4 Kommentare

Hier mal die Ausgangslage.

scanlog.txt
01.
hinkelstein [192.168.1.1] 23 (telnet): connection refused 
02.
hinkelstein [192.168.1.1] 22 (?) open 
03.
hinkelstein [192.168.1.1] 21 (ftp): connection refused 
04.
hinkelstein [192.168.1.1] 20 (ftp-data): connection refused 
05.
hinkelstein [192.168.1.1] 53 (domain) open 
06.
hinkelstein [192.168.1.1] 445 (microsoft-ds) open 
07.
hinkelstein [192.168.1.1] 444 (?): connection refused 
08.
hinkelstein [192.168.1.1] 443 (https) open 
09.
sent 0, rcvd 0
Batch File
01.
@echo off 
02.
set file=scanlog.txt 
03.
 
04.
FOR /F "tokens=1,2,3,4,5*" %%a in (%file%) do ( 
05.
	if not %%e=="" ( 
06.
		if not %%e==open ( 
07.
			echo Port %%c %%e %%f 
08.
			call :closed %%c 
09.
10.
11.
12.
 
13.
echo Closed ports: %closed% 
14.
 
15.
:closed 
16.
if defined closed (set closed=%closed% %1) else (set closed=%1) 
17.
goto :eof

Ausgabe
01.
Port 23 connection refused 
02.
Port 21 connection refused 
03.
Port 20 connection refused 
04.
Port 444 connection refused 
05.
Port rcvd 
06.
Closed ports: 23 21 20 444 rcvd
Nun meine Frage:
Wieso kommt in der ausgabe immer "rcvd" vor? In der for schleife wird doch extra abgefragt, ob %%e nicht leer ist.
Kann mir das einer erklären und wie ich das Problem weg bekomme?
Und wo Ich doch schon mit Probemen komme, hat viellcht noch jemand ne Idee wie ich die Ports austeigend dastellen lassen kann?
Also so: Closed ports: 20 21 23 444
und nicht so: Closed ports: 23 21 20 444
Aber erstmal muß das rcvd weg.
Mitglied: miniversum
16.02.2008 um 14:16 Uhr
Weil du dann nichts mit "" vergleichst. Ändere die Bedingung mal so:
if not "%%e"=="" (
oder so:
if "%%e" neq "" (

miniversum
Bitte warten ..
Mitglied: Dani
16.02.2008 um 14:28 Uhr
Hallo,
tausche einfach den Schleifenkörper aus:
01.
... 
02.
FOR /F "tokens=1,2,3,4,5*" %%a in ('type "%file%" ^| findstr /i /v "rcvd"') do ( 
03.
....
Somit werden alle Zeilen berücksichtigt, in denen das Wort "rvcd" nicht vorkommt.

Zur Sortierungwunsch kann ich dir leider nichts sagen...Batch ist eher so nebenher. *g* Dazu gibt es andere hier im Forum.


Grüße
Dani
Bitte warten ..
Mitglied: miniversum
16.02.2008 um 14:30 Uhr
Das mit der Portsortierung sollte so gehen:
01.
@echo off 
02.
set file=scanlog.txt 
03.
set tempfile="%temp%\sorttemp.txt" 
04.
 
05.
if exist %tempfile% del %tempfile% 
06.
FOR /F "tokens=1,2,3,4,5*" %%a in (%file%) do ( 
07.
	if not %%e=="" ( 
08.
		if not %%e==open ( 
09.
			echo Port %%c %%e %%f 
10.
			echo %%c>>%tempfile% 
11.
12.
13.
14.
 
15.
set "closed=" 
16.
FOR /F "delims=" %%i in ('sort %tempfile%') do call set "closed=%%closed%%%%i" 
17.
del %tempfile% 
18.
 
19.
echo Closed ports: %closed%
Bitte warten ..
Mitglied: christiank
16.02.2008 um 18:55 Uhr
Hat wie immer super geklappt.
Ich bin begeistert.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Warum Funktioniert der tokens befehl nicht

gelöst Frage von DomiZone1Batch & Shell5 Kommentare

Hallo liebe Administartor Community Ich Beis gleich in mein nicht vorhandenes lenkrad :D der befehl: for /f "delims=: tokens1,2" ...

Exchange Server

Exchange OWA Problem Kennwort falsch

Frage von HenereExchange Server16 Kommentare

Servus zusammen, ich bräuchte mal bitte Hilfe. Geht um den OWA eines Exchange 2013. Ein Nutzer kann sich nicht ...

Sicherheit

OTP Hardware Token ohne zentrale Infrastruktur

gelöst Frage von eglipeterSicherheit3 Kommentare

Hallo zusammen, ich möchte gerne, dass sich unsere Windows- und Linux-Nutzer an ihren Geräten jeweils mit Passwort + OTP ...

Windows 7

Problem, Im Windows Explorer werden Ordner mit falschem Namen angezeigt

Frage von Kalma73Windows 77 Kommentare

Hallo, habe ein Problem beim Ordner Anlegen unter Window 7 32 Bit. Ich habe ein Ordner wo ich in ...

Neue Wissensbeiträge
Backup

2016 - Restore mit WBAdmin - iSCSI Device als Sicherungsziel

Erfahrungsbericht von Henere vor 7 StundenBackup

Servus zusammen, was mich eben einige graue Haare gekostet hat Server 2016. Ich habe meinem Server eine weitere M2 ...

Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 2 TagenHumor (lol)5 Kommentare

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 2 TagenExchange Server7 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 3 TagenErkennung und -Abwehr3 Kommentare

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Heiß diskutierte Inhalte
Netzwerke
Netzwerk-Architektur mit VLANs
Frage von niLuxxNetzwerke43 Kommentare

Liebe Community, Ich hätte eine kurze Frage an euch. Ich werde in Kürze das Netzwerk unserer (sehr) kleinen Firma ...

Netzwerke
SSH - Wieso werde ich nach VPN Verbindung rausgeschmissen?
Frage von VernoxVernaxNetzwerke10 Kommentare

Hallo, ich habe es endlich geschafft mein Handy mit einer VPN Verbindung an meinen Router anzuschließen. Nach der Login ...

Microsoft
Ist es möglich ein reines Volume C Datenbackup in eine Hyper-V VM zu konvertieren?
Frage von Frank84Microsoft10 Kommentare

Hallo zusammen, ich habe hier ein Backup vorliegen, das ausschließlich das komplette C:\ Volume eines physischen Server 2012 enthält. ...

Windows Server
Freigaben per Default nur für Domänen-Benutzer
Frage von tierwoWindows Server8 Kommentare

Hallo gibt es eine Möglichkeit, einen Server 2016 so zu konfigurieren (z.B. per GPO), dass Freigaben die erstellt werden ...