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

Batch zum Abfragen von Clients. Ist der Client da, dann mache etwas.

Mitglied: 6741

6741 (Level 2)

29.11.2007, aktualisiert 03.12.2007, 4100 Aufrufe, 13 Kommentare

Moin...
geht irgendwie nicht ...
01.
set n=1
02.

03.
	:start
04.
	ping 192.168.178.%n% -n 1 | findstr "TTL" && goto client_da
05.
	%n%+1
06.
	goto start
07.

08.
		:client_da	
09.
		start notepad
10.
		%n%+1
11.
		if %n%=255 then goto end
12.
		goto start
13.

14.
:end
gedacht ist, wenn ein Client / IP da ist, dann wird etwas ausgeführt, sprich hier geht zur Kontrolle ein notepad auf. Aber der Loop geht nicht.
Evtl jemand ne Idee???

gruß
Mitglied: TuXHunt3R
29.11.2007 um 21:58 Uhr
Versuchs doch mal so (so mache ich die Ping-Abfragen in Batchs immer):

01.
ping <IP oder Computername> -n 1 | find /i "ttl" >nul
02.
if errorlevel 0 (
03.
start notepad
04.
) else (
05.
echo PC nicht erreichbar.....
06.
)
Bitte warten ..
Mitglied: bastla
29.11.2007 um 22:46 Uhr
Hallo firewalldevil!

Der "ping" sollte eigentlich funktionieren, die Schleife kann nicht gehen, da für das Erhöhen des Zählers ebenfalls ein "set" erforderlich wäre - entweder:
01.
set /a n=%n%+1
oder etwas kürzer:
01.
set /a n+=1
Allerdings würde sich hier auch eine "for"-Schleife anbieten:
01.
@echo off & setlocal
02.
for /l %%n in (1,1,254) do ping 192.168.178.%%n -n 1 | findstr "TTL" >nul && call :client_da %%n
03.
goto :eof
04.

05.
:client_da
06.
echo Client %1 erreichbar
07.
REM start notepad
Grüße
bastla
Bitte warten ..
Mitglied: 6741
30.11.2007 um 07:23 Uhr
moin bastla,

kannst du mir die Zeile etwas erklären.

Warum setzt du ein setlocal?
Wofür steht die "for /1 %%n in (1,1,254)"?

gruß und schönen start
Bitte warten ..
Mitglied: bastla
30.11.2007 um 08:53 Uhr
Hallo firewalldevil!

Warum setzt du ein setlocal?
Gewohnheitsmäßig; damit wird sichergestellt, dass ev in diesem Batch erzeugte Variablen mit dem Ende des Batches auch wieder verschwinden - da es hier (noch) keine derartigen Variablen gibt, ist das "setlocal" allerdings nicht erforderlich. Da aber beim Ende des Batches ohnehin automatisch ein "endlocal" ausgeführt wird, sollte meines Wissens das "setlocal" keine unerwünschten Nebenwirkungen haben.

Wofür steht die "for /1 %%n in (1,1,254)"?
Ich sollte mir angewöhnen, das "l" groß ("L") zu schreiben ...
... dann könnte es nach einem "for /?" auch richtig zugeordnet werden.

Mit dem Schalter "/L" wird eine Zählschleife (hier: Zähle von 1 mit der Schrittweite 1 bis 254 mit der Schleifenvariable %%n) erzeugt.

Grüße
bastla
Bitte warten ..
Mitglied: 6741
30.11.2007 um 18:04 Uhr
okay ...

warum setzt du die Variable in %%n?

gruß
Bitte warten ..
Mitglied: bastla
30.11.2007 um 18:18 Uhr
Hallo firewalldevil!

warum setzt du die Variable in %%n?
Du wolltest ja auch "n" verwenden, also bin ich dabei geblieben - und dass Laufvariable in einem Batch mit doppelten Prozentzeichen geschrieben werden, haben wir den Programmierern bei MS zu verdanken.

Abgesehen davon zeigt Deine Frage, dass Du beim Lesen der Onlinehilfe (hatte ich "for /?" erwähnt) noch nicht wirklich weit gekommen bist ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
03.12.2007 um 09:11 Uhr
Moin fwd,

Rückfrage: Wie ist denn der gefühlte Beantwortungsgrad Deiner Frage?

Bitte um Feedback.
...oder noch lieber: Bitte um spontanes, ungezwungenes Feedback...

Grüße
Biber
Bitte warten ..
Mitglied: 6741
03.12.2007 um 16:54 Uhr
moin ...

mit "for /?" hast du recht ....

muss ich mir in Ruhe angucken.

In der Anwendung läuft es nicht ganz rund.
Ich möchte damit ranges von IP Bereichen mit dem MBSA abfragen, wenn jetzt ein Client nicht anpingbar ist meldet das Tool das es den Client 192.168.178.. nicht findet. Also müsste sichergestellt sein, das IP die nicht pingbar sind auch mit der anfrage übersprugen werden. Dachte das die for Schleife dies macht, wegen der TTL Abfrage.

gruß
Bitte warten ..
Mitglied: bastla
03.12.2007 um 17:06 Uhr
Hallo firewalldevil!

... IP die nicht pingbar sind auch mit der anfrage übersprugen werden. Dachte das die for Schleife dies macht, wegen der TTL Abfrage.
So sollte es auch sein.
Wir hätten es übrigens leichter, wenn Du den derzeitigen Stand Deines Codes postest ...

Grüße
bastla
Bitte warten ..
Mitglied: 6741
03.12.2007 um 17:53 Uhr
sorry ....

der Code
_______________________________________________
01.
@echo off & setlocal
02.
for /l %%n in (1,1,254) do ping 192.168.178.%%n -n 1 | findstr "TTL" >nul && call :client_da %%n
03.
goto :eof
04.

05.
exit
06.

07.
:client_da
08.
mbsacli /target 192.168.178.%n% /catalog c:\mbsa\wsusscn2.cab > c:\mbsa\result.txt

_______________________________________________

die Meldung aus der DOS-Box
_______________________________________________
01.
Microsoft Baseline Security Analyzer
02.
Version 2.0.1 (2.0.6706.0)
03.
(C) Copyright 2002-2006 Microsoft Corporation. Alle Rechte vorbehalten.
04.

05.

06.
Überprüfung abgeschlossen.
07.
Der folgende Computername konnte nicht aufgelöst werden: 192.168.178.. Geben Si
08.
 den Computernamen, Domänenname\Computer oder eine IP-Adresse an.
09.
Keine Computer in der Überprüfungsliste.
_______________________________________________


okay ...

evtl sollte ich ne Start IP angeben, da es sich bei den IP´s ab 1 um System handelt wo der MBSA nicht dran kommt. Aber ab IP 100 müsste es gehen. Evtl ne Meldung das die nicht pinbaren nicht da sind und in eine Liste abgelegt werden. Wenn ich jetzt nochmals starte sollte diese überprüft werden und ergänzt.

Wie sieht du das aus der Praxis?

Hintergrund ist, der MBSA kommt bei uns nicht "raus" und ich muss ihn offline laufen lassen mit der aktuellen *.cab Datei.

gruß
Bitte warten ..
Mitglied: Biber
03.12.2007 um 18:08 Uhr
Moin fwd,

mal sehen, ob ich diesmal schneller bin als bastla...

Wenn Du in der FOR-Anweisung die Zählvariable %%n verwendest, ist diese nur während der Laufzeit der FOR-Anweisung existent und nur innerhalb dieser Codezeile.

Wenn Du aus der FOR-Anweisung jeweils noch einen anderen Code-Block (":client_da") oder einen anderen Batch aufrufst, kennt dieser diese Zählvariable %%n nicht.
Du übergibst dem ":client_da"-Block nur den Wert von %%n (meinetwegen 1 oder 23...), und dieser Wert kommt als Parameter 1 == erster Parameter == %1 in ":Client_da" an.

Also musst Du dort schreiben:
01.
:client_da
02.
mbsacli /target 192.168.178.%1 /catalog c:\mbsa\wsusscn2.cab > c:\mbsa\result.txt
Dann klappt es.

Grüße
Biber
Bitte warten ..
Mitglied: 6741
03.12.2007 um 19:12 Uhr
ich glaube ich versteh es nicht .....

wenn ich in der Zeile "client_da" die Vari %1 angeben, wie bzw wlechen zusammenhang hat diese mit %%n aus der for Schleife?
Bitte warten ..
Mitglied: Biber
03.12.2007 um 19:25 Uhr
Moin fwd,

lass mal kurz die Variable %%n außen vor.

Wenn Du irgendwo in Deinem Batch diesen ":Client_da"-Block CALLst mit...

Call :client_da "eins" "zwei" "waschmaschin"

dann kommen "unten" aus Sicht des geCALLten Blocks ":Client_da" drei Parameter an...
01.
 ::... im Block :Client_da
02.
:Client_da
03.
:: %1 == Parameter1 == "eins"
04.
:: %2 == Parameter2 == "zwei"
05.
:: %3 == Parameter3 == "waschmaschin"
Wenn Du ihn rufst mit "call :client_da Hallo, jemand zu Hause?

01.
 ::... im Block :Client_da
02.
:Client_da
03.
:: %1 == Parameter1 == Hallo
04.
:: %2 == Parameter2 == jemand
05.
:: %3 == Parameter3 == zu
06.
:: ..... usw.
07.
Und wenn Du den Block CALLst mit "call :client_da %%n" und %%n ist ein Schleifenwert von 1 bis 255...

Dann kommt nacheinander die 1, die 2, die 3....die 255 als erster Parameter, also %1 dort an.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Windows Server
SSTP Client zu Client Kommunikation
gelöst Frage von RoxxusWindows Server3 Kommentare

Hallo Zusammen, weiß jemand zufällig ob es den Clients, die sich zu einem SSTP-Server verbinden, möglich ist untereinander zu ...

Multimedia & Zubehör
Sprachkommunikation von Client zu Client
gelöst Frage von 121016Multimedia & Zubehör5 Kommentare

Liebes Forum! Ich verzweifle gerade an einer recht spezifischen Aufgabe: Ausgangsituation: - es handelt sich um eine Anlage für ...

Linux Netzwerk

OpenVPN: Client to Client ohne client-to-client Direktive: nur One way Ping

Frage von SnowCrushLinux Netzwerk

Hi Gurus, ich versuche die OpenVPN Funktion client-to-client zu emulieren (ohne diese option zu nutzen). Hintergrund ist das ich ...

Router & Routing

Lancom VPN Client to Client Kommunikation.

gelöst Frage von UnbekannterNR1Router & Routing2 Kommentare

Hallo, Kurz die Situation, Ich habe eine Lancom 1781EW auf dem sich drei Externe Computer mit dem Lancom Advanced ...

Neue Wissensbeiträge
Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 1 TagInternet4 Kommentare

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 1 TagWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 2 TagenWindows 102 Kommentare

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Sicherheit

Heise Beitrag Passwort-Sammlung mit 773 Millionen Online-Konten im Netz aufgetaucht

Information von Penny.Cilin vor 2 TagenSicherheit6 Kommentare

Auf Heise Online ist folgender Beitrag veröffentlicht worden: Heise Beitrag passwörter geleakt Ich bin mir jetzt nicht ganz sicher, ...

Heiß diskutierte Inhalte
TK-Netze & Geräte
TAPI auf einem Win2016Server installieren und einrichten
Frage von wstabelTK-Netze & Geräte28 Kommentare

Hallo liebe Admins, ich habe folgende Situation: 1 Windows Server 2016 Standard als DC 1 SNOM 710 IP-Telefon 1 ...

Batch & Shell
Mit findstr batch doppelte zeilen einer txt löschen
Frage von Burningx2Batch & Shell24 Kommentare

Hi Vor einer weile habe ich im netzt einen windows shell befehl gefunden mit welchem man über die konsole ...

Verschlüsselung & Zertifikate
Netzwerkfreigabe Verschlüsselung
Frage von grill-itVerschlüsselung & Zertifikate20 Kommentare

Moin zusammen, sicher nutzen hier die ein oder anderen ein Produkt zur Verschlüsselung von Netzwerkfreigaben/-laufwerken auf denen hochsensible Daten ...

Microsoft
Übertragung von MS Volumenlizenzen
Frage von SherlockineMicrosoft19 Kommentare

Ich bin Angestellte in einer kleinen 10-köpfigen IT-Firma, die Netzwerklösungen, Telefonielösungen und Ähnliches anbietet. Im Sommer hatten wir einen ...