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

inhalt einer datei nach einem stichwort durchsuchen und ausgeben

Frage Entwicklung Batch & Shell

Mitglied: Miischiii

Miischiii (Level 1) - Jetzt verbinden

09.04.2008, aktualisiert 14:30 Uhr, 6622 Aufrufe, 10 Kommentare

hi alle zusammen,

hab folgendes anliegen:

ich möchte gerne eine batch die täglich mehrere ips anpingt und mir das in einer datei logt. das ist ja kein problem hab ich schon hinbekommen. nur als nächster schritt soll die datei nache dem wort "zeitüberschreitung" durchsucht werden und sobald so ein treffer vorliegt sollte es eine neue datei auf meinem desktop rausschmeißen oder am aller besten ne email verschicken.

achja und er sollte immer nach dem aktuellen datum schauen. ich loge zur zeit mit dem aktuellen datum und der urhzeit. darum sollte sich die batch dann doch schon auf das gerade aktuelle systemdatum beziehen.

so das wars

und so als kleine bitte...

habt ihr ein paar gute links wo man sich etwas mehr mit bacht "programmierung" befassen kann? so tutorials, befehle etc.

danke im voraus
Mitglied: 60730
09.04.2008 um 12:44 Uhr
Hi


magst mir kurz erklären was die einzelnen zeilen machen?
will das auch verstehen was ich benutzen möchte...

01.
rem "pinge" den Rechner "Pong" an, und gebe das Ergebnis davon in die Textdatei  "Pingpong.log" (in dem Laufwerk/Verzeichnis, wo die Batch gestartet wird.) 
02.
ping pong > pingpong.log 
03.
 
04.
rem durchsuche, ob in der pingpong.log der Wert berschreitung steht 
05.
findstr /c:"berschreitung" pingpong.log 
06.
 
07.
Rem wenn ja, gehe zu offline 
08.
IF %ERRORLEVEL% == 0 goto offline 
09.
Wenn nein, gehe ans ende 
10.
IF %ERRORLEVEL% == 1 goto end 
11.
 
12.
:offline 
13.
rem - ein System wurde nicht gefunden und gebe diese Meldung auf dem Bildschirm aus. 
14.
echo ein Rechner ist offline 
15.
rem füge die aktuelle Uhrzeit in die Textdatei pingpong.log an. 
16.
time /t >> pingpong.log 
17.
 
18.
:end 
19.
 
Den Umlaut Ü wird das Findstr nicht finden - daher nur nach "berschreitung" suchen

Edit:

Biber in Google und in diesem Forum
Bastla in diesem Forum
edit2:
richtigerweise genau andersherum...
Bitte warten ..
Mitglied: Miischiii
09.04.2008 um 13:00 Uhr
magst mir kurz erklären was die einzelnen zeilen machen? will das auch verstehen was ich benutzen möchte...

EDIT:

ok noch dazu wird nur die urhzeit ausgegeben... hätte aber lieber eine ausgabe wenn eine ip nicht erreichbar ist.
Bitte warten ..
Mitglied: 60730
09.04.2008 um 13:14 Uhr
hab ich gemacht,

nun bist du dran - poste doch mal deine Batch und dann verstehn wir auch, wie du das gelöst hast und was du noch brauchst.

pingpong.cmd

01.
ping %1 >ping.txt 
02.
findstr /c:"berschreitung" ping.txt 
03.
IF %ERRORLEVEL% == 1 goto end 
04.
IF %ERRORLEVEL% == 0 goto offline 
05.
 
06.
:offline 
07.
date /t >> pingpong.log 
08.
time /t >> pingpong.log 
09.
Echo System %1 hat sich nicht gemeldet. >> pingpong.log 
10.
notepad pingpong.log 
11.
:end
pingnetz.cmd

01.
 
02.
pingpong.cmd 192.168.1.1 
03.
pingpong.cmd 192.168.1.2
kopiere diese beiden scripte unter Ihrem Namen in einen Ordner und ändere in Pingnetz - deine Rechner (oder IP) Adressen.

Starte dann die pingnetz.

Ps: in einer Komandozeile kannst du jeden der Befehle eingeben und "/?" dahinter schreiben.
Damit hast du eine gute Hilfe.

Ich bin schon ganz gespannt auf die For to Schleife, die gleich/später kommt
Bitte warten ..
Mitglied: Miischiii
09.04.2008 um 13:20 Uhr
noch eine frage und zwar hier zu:

Rem wenn ja, gehe zu offline
IF %ERRORLEVEL% GTR 0 goto offline
Wenn nein, gehe ans ende
IF %ERRORLEVEL% EQU 0 goto end

woher weiß der was welcher errorlevel ist?

mit der batch ist es nämlich egal ob der rechner erreichbar ist oder nicht er erzeugt immer eine log datei mit einer uhrzeit...
Bitte warten ..
Mitglied: 60730
09.04.2008 um 13:31 Uhr
woher weiß der was welcher errorlevel
ist?

mit der batch ist es nämlich egal ob
der rechner erreichbar ist oder nicht er
erzeugt immer eine log datei mit einer
uhrzeit...

???

Das kann nur dann so sein, wenn die Batch "irgendwo" liegt und du Sie nicht in Ihrem Ordner startest.
(dann wird die log datei nicht gefunden - ergo auch kein "berschreitung" darin gefunden)
Ändere doch mal alles "ping.txt" in c:\test\ping.txt und kopiere Sie dortrein und starte die batch aus dem Verzeichnis raus.
Bitte warten ..
Mitglied: Miischiii
09.04.2008 um 13:46 Uhr
ne liegt alles in einem ordner...

so schaut se aus

ping 192.168.10.45 >> aps.log

findstr /c:"berschreitung" aps.log
IF %ERRORLEVEL% GTR 0 goto offline
IF %ERRORLEVEL% EQU 0 goto end

:offline
date /t >> pingpong.log
time /t >> pingpong.log
:end
Bitte warten ..
Mitglied: 60730
09.04.2008 um 13:52 Uhr
ne liegt alles in einem ordner...

ich denke - ich hab den Käfer


autsch

jetzt hab ichs mal getestet - sorry....


01.
 
02.
IF %ERRORLEVEL% == 1 goto end 
03.
IF %ERRORLEVEL% == 0 goto offline 
04.
 


entweder änderst du ">>" in > - oder setzt ein del aps.log vorne dran.

So ">>" wird die aps.log ja immer um weitere Infos erweitert. War "jemals" vorher ein nicht gefunden - dann findet er das auch immer wieder.

01.
 ping 192.168.10.45 >aps.log 
02.
  
03.
 findstr /c:"berschreitung" aps.log 
04.
 IF %ERRORLEVEL% GTR 0 goto offline 
05.
 IF %ERRORLEVEL% EQU 0 goto end 
06.
  
07.
 :offline 
08.
 date /t >> pingpong.log 
09.
 time /t >> pingpong.log 
10.
 :end
Bitte warten ..
Mitglied: Miischiii
09.04.2008 um 13:59 Uhr
nun hab ich das schon so wie du es gepostet hast und es haut immernoch nicht hin...
in der log steht das ich eine antwort erhalte aber er schreibt mir immernoch eine log datei mit datum und uhrzeit...



EDIT:

habe mal was ausprobiert... und zwar geht er beide bedingungen durch...

ping 192.168.10.45 >aps.log

findstr /c:"berschreitung" aps.log
IF %ERRORLEVEL% GTR 0 goto offline
IF %ERRORLEVEL% EQU 0 goto end

:offline
date /t >> pingpong.log
time /t >> pingpong.log
:end
date /t >> pingpong.log
time /t >> pingpong.log

es kommt zweimal datum und uhrzeit in der log datei...

entweder setzt er den errorlevel nicht auf 1 oder keine ahnung..
Bitte warten ..
Mitglied: 60730
09.04.2008 um 14:09 Uhr
yupp,

hab den Fehlercode genau um 180 verdreht.

01.
IF %ERRORLEVEL% == 1 goto end 
02.
IF %ERRORLEVEL% == 0 goto offline
so ists besser
Bitte warten ..
Mitglied: Miischiii
09.04.2008 um 14:30 Uhr
ja nu hauts auch hin. und macht auch sinn ;)

danke dir.

nun noch einen geplanten task und dann hab ich ruhe

nurnoch die frage: hast du paar gute links etc. für mich ?


EDIT: gibts noch eine möglichkeit das ganze per mail verschicken zu lassen?
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

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

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

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 ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...