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

Erst alle Netzwerkbenutzer auslesen, dann diese anpingen und in ein Logfile schreiben

Frage Entwicklung Batch & Shell

Mitglied: kkboy94

kkboy94 (Level 1) - Jetzt verbinden

29.06.2010 um 14:53 Uhr, 7652 Aufrufe, 10 Kommentare

Hallo Admins,

Ich weiß ja, dass diese frag schon öfters aufgetaucht ist aber bei den anderen beiträgen habe ich noch nicht ganz das gefunden, was ich brauche

01.
@echo off & setlocal 
02.
:start 
03.
::(dt. Bei US-Version "Reply" statt "Antwort"):: 
04.
net view 
05.
 
06.
> "net-pcs.txt" net view 
07.
echo. 
08.
set /p computername=Computernamen angeben:  
09.
for /F "Tokens=3 Delims=: " %%i in ('ping -n 1 "%computername%"^|Find "Antwort"') do ( set IP=%%i ) 
10.
if not defined IP goto :start 
11.
echo %ip% 
12.
> "network_ping_test.log" echo Die IP %IP% gehört zu %computername% & echo. 
13.
pause
Das ist das was ich bis jetzt zustande gebracht hab.
Die for-Schleife (und damit der größte Teil) habe ich mir aus Biber's 2. Tutorial genommen.

Jetzt soll die Batch (oder heißt es der Batch/das Batch??) aber alle PC-Namen, welche im gesamten netzwerk gefunden werden anpingen, und dann die passende Nachricht ins Log schreiben.
ich weiß auch nicht ob der Befehl "net view" dazu geeignet ist, da der ja eigentlich nur die Arbeitsgruppen-Computer anzeigt.
Welcher befehl würde nun meinen Wünschen entsprechen?

Danke schonmal im Voraus

Mit freundlichen Grüßen Karsten
Mitglied: BigWim
29.06.2010 um 15:11 Uhr
Hallo Karsten,

sieh Dir mal dsquery /? und im speziellen dsquery computer /?.

Beispiele, die Du anpassen kannst, wirst Du genug finden. Mit dsquery ... würde ich eine Liste der Computer schreiben, die dann per for /f ... in (<Dateiname>) ... abgearbeitet wird.

Markus
Bitte warten ..
Mitglied: kkboy94
29.06.2010 um 15:18 Uhr
Hmm der Befehl scheint in meinem Windows nicht vorhanden zu sein.
Bitte warten ..
Mitglied: BigWim
29.06.2010 um 15:24 Uhr
das bekomme ich, wenn ich dsquery /? eintippe:



Beschreibung: Die Befehle dieser Toolsammlung ermöglichen Ihnen, das Verzeichnis

laut angegebener Suchkriterien zu durchsuchen. Jeder der folgenden

dsquery-Befehle sucht nach Objekten eines bestimmten Objekttyps;
nur dsquery * sucht nach allen Objekttypen:

dsquery computer - Sucht nach Computern im Verzeichnis.
dsquery contact - Sucht nach Kontakten im Verzeichnis.
dsquery subnet - Sucht nach Subnetzen im Verzeichnis.
dsquery group - Sucht nach Gruppen im Verzeichnis.
dsquery ou - Sucht nach Organisationseinheiten im Verzeichnis.
dsquery site - Sucht nach Standorten im Verzeichnis.
dsquery server - Sucht nach Servern im Verzeichnis.
dsquery user - Sucht nach Benutzern im Verzeichnis.
dsquery quota - Sucht nach Spezifikation für Datenträgerkontingente
im Verzeichnis.
dsquery partition - Sucht nach Partitionen im Verzeichnis.
dsquery * - Sucht nach Objekten im Verzeichnis mit einer
Standard-LDAP-Abfrage Verzeichnis.

Geben Sie "dsquery <Objekttyp> /?" zum Anzeigen einer bestimmten
Befehlsyntax, wobei <Objekttyp> einer der oben angezeigten Objekttypen ist,
z. B. dsquery ou /?.

Anmerkungen:
Die dsquery-Befehle ermöglichen Ihnen, nach Objekten im Verzeichnis
laut angegebener Suchkriterien zu suchen: die Eingabe bei dsquery ist
eine Suchkriterie und die Ausgabe ist eine Liste der übereinstimmenden
Objekte. Verwenden Sie die dsget-Befehle (dsget /?), um die
Eigenschaften eines bestimmten Objekts abzurufen.

Die Ergebnisse eines dsquery-Befehls können in eines der anderen
Verzeichnisdienst-Befehlszeilenprogramm, wie z. B. dsmod, dsget, dsrm
oder dsmove, weitergeleitet werden.

Kommas, die nicht als Trennzeichen in definierten Namen verwendet werden,
müssen einem umgekehrten Schrägstrich folgen ("\") (z. B.
"CN=Firma\, GmbH,CN=Benutzer,DC=microsoft,DC=com"). Umgekehrte
Schrägstriche in definierten Namen müssen einem umgekehrten Schrägstrich
folgen (z. B.
"CN=Verkauf\\Südamerika,OU=Verteilungslisten,
DC=microsoft,DC=com").


Beispiele:
Der folgende Befehl sucht nach allen Computern, die in den letzten vier
Wochen nicht aktiv waren und entfernt diese aus dem Verzeichnis:

dsquery computer -inactive 4 | dsrm

Der folgende Befehl sucht nach allen Organisationseinheiten
"ou=Marketing,dc=microsoft,dc=com" und fügt diese der
Marketingmitarbeitergruppe hinzu:

dsquery user ou=Marketing,dc=microsoft,dc=com | dsmod group
"cn=Marketingmitarbeiter,ou=Marketing,dc=microsoft,dc=com" -addmbr

Der folgende Befehl sucht nach allen Benutzern, deren Namen mit "Jens"
beginnen, und zeigt deren Büronummern an:

dsquery user -name Jens* | dsget user -office

Verwenden Sie den Befehl "dsquery *" um einen zufälligen Attributsatz
eines angegebenen Objekts im Verzeichnis anzuzeigen. Der folgenden Befehl
zeigt den SAM-Kontonamen, Benutzerprinzipalnamen und Abteilungsattribute
des Objekts mit DN gleich ou=Test,dc=microsoft,dc=com an:

dsquery * ou=Test,dc=microsoft,dc=com -scope base
-attr sAMAccountName userPrincipalName department

Folgender Befehl zeigt alle Attribute des Objekts mit DN gleich
ou=Test,dc=microsoft,dc=com an:

dsquery * ou=Test,dc=microsoft,dc=com -scope base -attr *

Hilfe der Verzeichnisdienst-Befehlszeilenprogramme:
dsadd /? - Zeigt die Hilfe für das Hinzufügen von Objekten an.
dsget /? - Zeigt die Hilfe für das Anzeigen von Objekten an.
dsmod /? - Zeigt die Hilfe für das Bearbeiten von Objekten an.
dsmove /? - Zeigt die Hilfe für das Verschieben von Objekten an.
dsquery /? - Zeigt die Hilfe für das Suchen von Objekten an, die mit
den Suchkriterien übereinstimmen.
dsrm /? - Zeigt die Hilfe für das Löschen von Objekten an.
Bitte warten ..
Mitglied: kkboy94
29.06.2010 um 15:49 Uhr
Hmm ne . Egal welche Variante ich probiere, CMD sagt mir:
Der Befehl "dsquery" ist entweder falsch geschrieben oder konnte nicht gefunden werden.

Hat sonst noch jemand eine Idee
Danke für den leider nicht hilfebringenden Tipp

Mit freundlichen Grüßen Karsten
Bitte warten ..
Mitglied: BigWim
29.06.2010 um 15:53 Uhr
Zitat von kkboy94:

Hmm ne . Egal welche Variante ich probiere, CMD sagt mir:
Der Befehl "dsquery" ist entweder falsch geschrieben oder konnte nicht gefunden werden.

Vielleicht kannst Du ja mal etwas mehr zu Deiner Umgebung schreiben, ansonsten wird das nämlich ein mühseliges Ratespiel ....

Markus
Bitte warten ..
Mitglied: kkboy94
29.06.2010 um 16:02 Uhr
Was meinst du mit Umgebung?
Ich benutze Windows XP professional SP3 Version 2002 Build 5.1.2600

Meinst du das?
Bitte warten ..
Mitglied: 60730
29.06.2010 um 16:04 Uhr
Moin,

fangen wir mal "neu" an - obwohl das olle kammellen sind
Der parameter ipbase sind deine ersten 3. oktette gefolgt von einem Punkt. -das bitte anpassen.

01.
SET ipbase=192.168.1. 
02.
SET log=netz.txt 
03.
 
04.
FOR /L %%i IN (1,1,254) do ping -n 1 -w 5 %ip%%%i|find "TTL=" && ECHO %ipbase%%%i>> A%log% 
05.
 
06.
echo mit diesem Teil bekommst du mal alle Treffer - die zur Zeit an sind. 
07.
echo nur als Beispiel 
08.
echo und mit Net View - vereinfacht mit zwei getrennten Schleifen - die ein logfile benutzen, damits nicht noch "komplexer wird" 
09.
echo ist ja nur ne lauffähige Demo - oder proof of concept 
10.
 
11.
for /f "skip=3 tokens=1,* delims=\" %%a in ('"net view"') do ping %%a -n 1 |find "[">>B%log% 
12.
for /f "tokens=2,3" %%a in (B%log%) do echo %%a %%b>>C%log%
Ich denke mal damit kannst alles mögliche draus bauen und rumspielen - und beim Rest einfach mal nach [batch Log Ping] suchen - da findet sich alles mögliche.
Gruß


edit ok..... und das ich dem lot seine Pings jetzt vorweggenommen hab - das hätte ich nicht erwartet...
...und das ich das Ding teilweise als batch und teilweise als kommdozeilenbefehl (ein % statt zwei %%) geschrieben habe -liegt am Wetter
Bitte warten ..
Mitglied: kkboy94
29.06.2010 um 16:36 Uhr
Was ist denn der Rest? Und was bedeutet jeweils die 1 und die 2 vor dem %log% (1%log% 2%log%) ?

Mit freundlichen Grüßen Karsten
Bitte warten ..
Mitglied: 60730
29.06.2010 um 16:57 Uhr
Zitat von kkboy94:
Was ist denn der Rest? Und was bedeutet jeweils die 1 und die 2 vor dem %log% (1%log% 2%log%) ?
  • welcher "rest"
  • wenn ich dir - obwohl ich dir den Suchmachineneingabewert genannt habe - wo du alles findest zwei unterschiedliche Wege zu deinem persönlichen Rom liefere, dann kann ich die logfilebenamung doch - wie den rest der Beispiele - selber bestimmen

Mit freundlichen Grüßen Karsten

zurück . und - wenn ich "zum spielen" schreibe - erwarte ich das dann auch und keine Gegenfragen vorm "test"....
Bitte warten ..
Mitglied: kkboy94
29.06.2010 um 21:38 Uhr
Getestet hab ichs ja....
Und es funktioniert nach einigen Anpassungen


Danke für die Hilfe

PS: Das sollt nicht unhöflich klingen


Mit freundlichen Grüßen Karsten
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Windows Server
gelöst AD-User einer AD-Gruppe auslesen und in ein File schreiben (15)

Frage von Estefania zum Thema Windows Server ...

Windows Systemdateien
gelöst Registry-Schlüssel per Batch auslesen und in Datei schreiben (9)

Frage von Philzip zum Thema Windows Systemdateien ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (22)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...