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 Variable aus Schleife

Mitglied: sinsizer

sinsizer (Level 1) - Jetzt verbinden

13.10.2011, aktualisiert 14.10.2011, 2380 Aufrufe, 5 Kommentare

Hallo, erstmal hat mir das Forum bis jetzt sehr geholfen, unglaublich viele und gute Informationen.
Allerdings habe ich ein kleines Problem wo ich einfach nicht weiter komme.

01.
for /L %%i in (1,1,%anzahl%) do set /p url=URL %%i:& echo !url! >> temp1.txt & ping -n 1 !url! >> temp.txt
02.
for /F "tokens=3,9 delims==<: " %%f in ('findstr "TTL" temp.txt') do if %%g LSS 80 (echo %%f Unix/Linux >> scan.txt & echo. >> scan.txt) else (echo %%f Windows >> scan.txt & echo. >> scan.txt)
Ich möchte in die scan.txt die vom user bestimmten URLs vor oder über den entsprechenden IPs ausgeben.

Probleme:
1. Die Variable url befindet sich in einer Schleife, die kann ich nicht nutzen. (wird ja nur der letzte wert gespeichert)
2. habe die urls in eine extra Datei geschrieben um sie von dort einzufügen, allerdings weiß ich nicht wie ich die einzelnen Zeilen auslesen und zuordnen kann.
3. Die for /F in der for /L Schleife führt zu einer steigenden Wiederholung der Ausgabe in der scan.txt. Geht also auch nicht.
4. Versuche ich in der schleife for /F den entsprechenden token aus einer anderen Zeile der temp.txt auszulesen wird der natürlich aus beiden Zeilen gelesen. (3,9 sind in der selben Zeile)

Jetzt weiß ich wie es nicht geht

Wäre toll wenn mir da jemand einen Tip oder eine Lösung geben kann.
Gerne auch zu einer besseren Formatierung oder anderer Lösungsweg.

Vielen Dank.
Mitglied: Skyemugen
13.10.2011, aktualisiert 27.10.2011
Aloha,

in etwa so (?)

01.
@echo off & setlocal enabledelayedexpansion
02.
set /a "anzahl=2"
03.
for /L %%i in (1,1,%anzahl%) do (
04.
	set /p url=URL %%i:
05.
	for /F "tokens=3,9 delims==^<: " %%f in ('ping -n 1 !url!^|findstr "TTL"') do (
06.
		if %%g LSS 80 (
07.
		>>scan.txt (echo !url!
08.
				echo %%f Unix/Linux)
09.
		) else (
10.
		>>scan.txt (echo !url!
11.
				echo %%f Windows
12.
				echo.)
13.
		)
14.
	)
15.
)
16.
pause
greetz André

P.S. Frühstück!
Bitte warten ..
Mitglied: sinsizer
13.10.2011 um 15:57 Uhr
Super, Danke für die schnelle Antwort.

Genau so hab ich mir das vorgestellt.
Leider wäre ich garnicht auf die Idee gekommen die Schleife so aufzubauen.
Wusste z.b. nicht das ">>scan.txt" auch davor stehen kann.


Da muss ich wohl noch was üben.
Bitte warten ..
Mitglied: sinsizer
14.10.2011 um 09:45 Uhr
Sorry, aber ich muss nochmal Fragen.

Wenn ich jetzt "ping -a" benutze und den Hostnamen noch ausgeben will, liegt der in einer anderen Zeile so das ich nicht einzeln ran komme.
So siehts bis jetzt aus.
01.
for /L %%i in (%start%,1,%ende%) do (
02.
	for /F "tokens=5" %%f in ('ping -a -n 1 %IP%.%%i ^>temp.txt ^& findstr "TTL [" temp.txt') do (
03.
		for /F "tokens=3,7,9 delims==<: " %%a in ('findstr "TTL" temp.txt') do (
04.
			if %%c LSS 35 ( 
05.
						>>scan2.txt (echo %%f Zeit=%%b %%a Windows95/WindowsNT) 
06.
									echo. >> scan2.txt
Habe so leider bei jedem Durchlauf eine überflüssige Zeile drin.
Bitte warten ..
Mitglied: Skyemugen
14.10.2011 um 10:23 Uhr
Aloha,

sorry aber ich habe, ehrlich gesagt, heute keine Lust mich in dein Chaos hineinzudenken, zumal du wieder mit temp.txt arbeitest und teilweise falscher for-Zusammenstellung, dass ich schon nicht mehr blicke welche Werte du eigentlich ausgeben haben willst.

Also mach' es uns beiden doch leichter: Wie ich vermute, ist das letzter für das interne Netzwerk(?), welche Werte / Informationen willst du aus dem ping ausgegeben wissen? Denn Zeile 02 z.B. gibt 32 aus, ob du das so willst ... (?)

greetz André

egal, ich werf' dir jetzt einfach mal etwas hin ...

01.
@echo off & setlocal
02.
set /a "start=10"
03.
set /a "ende=15"
04.
set "IP=192.168.100"
05.
for /L %%i in (%start%,1,%ende%) do (
06.
	for /f "tokens=3,5,7,9 delims==:^< " %%a in ('ping -a -n 1 %IP%.%%i^|findstr "TTL"') do (
07.
		if %%d LSS 35 >>scan.txt (echo %%a Bytes=%%b Zeit=%%c Windows95/WindowsNT && echo.)		
08.
		)
09.
	)
10.
)
11.
pause
Bitte warten ..
Mitglied: sinsizer
14.10.2011 um 12:14 Uhr
Kein Problem, verstehe mich manchmal selber nicht.

Das Ding war/ist das der Hostname, der bei "ping -a" vor der IP ausgegeben wird, in einer anderen Zeile steht als der Rest.

Habs jetzt so gelöst:
01.
(findstr  /B /V "Zeit" scan2.txt) >> log2.txt
Ist zwar ziemlich "unsauber" da ich in 2 extra Dateien schreibe, die wieder gelöscht werden, aber solange kein Hostname mit "Zeit" beginnt funktionierts.

Zu deinen Fragen: Ja, ist fürs interne. Der Wert ist so gewollt um grob Rückschlüsse auf das verwendete OS ziehen zu können.
Bitte warten ..
Neue Wissensbeiträge
Internet

CDU Propaganda: Urheberschutz im Internet - Ende des digitalen Wild-West

Information von Frank vor 19 StundenInternet3 Kommentare

Hallo Administratoren, aus einem Kommentar heraus habe ich folgenden Beiträge von Herr Sven Schulze und Axel Voss (beide CDU ...

Router & Routing

Zyxel VMG 1312 B30A - Firmwareupdate nur im "privaten" Firefox Modus möglich

Tipp von the-buccaneer vor 1 TagRouter & Routing2 Kommentare

Hatte hier ein Zyxel 1312 das ums verrecken kein Firmwareupdate durchführen wollte. Datei ist auswählbar, dann kommt der Fortschrittskreisel ...

Windows 7

Windows 7 u. Server 2008 (R2) SHA-2-Update kommt am 12. März 2019

Information von kgborn vor 2 TagenWindows 75 Kommentare

Kleine Info für die Admins der oben genannten Maschinen. Ab Juli 2019 werden Updates von Microsoft nur noch mit ...

Firewall
PfSense 2.5.0 benötigt doch kein AES-NI
Information von ChriBo vor 4 TagenFirewall2 Kommentare

Hallo, Wie sich einige hier erinnern werden hat Jim Thompson in diesem Aritkel beschrieben, daß ab Version 2.5.0 ein ...

Heiß diskutierte Inhalte
Hardware
PC im Selbstbau, Workstation, mittelklasse Gaming
gelöst Frage von MrRobot1997Hardware21 Kommentare

Hallöchen Leute, ich bin seit einigen Jahren leider nicht mehr wirklich im Bild, wenn es um die Hardware und ...

Datenbanken
PHP Fatal error: Uncaught Error: Call to undefined function oci connect
Frage von PlanitecXDatenbanken20 Kommentare

Hallo Zusammen, ich sitze seit Tagen am Problem das ich keine PHP Anwendung mit Anbindung zu Oracle zum laufen ...

Hardware
Welchen Shop Großhandel für EDV?
Frage von opc123Hardware17 Kommentare

Hallo, ich finde kein passendes Thema. Ich suche einen Großhändler für alltägliche EDV Ausstattung: Ethernet Kabel, Switche, Stromverteiler, Handy´s, ...

Windows Server
User auf Server Install-Rechte geben
gelöst Frage von killtecWindows Server17 Kommentare

Hi, ich möchte auf mehreren W2016 Servern einem bestimmten User das Recht zum Installieren von Programmen geben. Er soll ...