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

Frage Entwicklung Batch & Shell

GELÖST

Fehler in for - Schleife

Mitglied: kkboy94

kkboy94 (Level 1) - Jetzt verbinden

03.07.2010, aktualisiert 14:52 Uhr, 3331 Aufrufe, 12 Kommentare

Ich weiß, es klingt einfach. Ist es eigentlich auch aber ich glaube ich steh aufm Schlauch und kommen einfach nicht drauf, was falsch sein könnte.
Meine Schleife sieht so aus:
for /f "skip=2" %%z in (%file%.txt) do type %%z
Aber sie funktioniert einfach nicht. Die batch Datei sagt mir :

Das System kann die angegebene Datei nicht finden.

Das klingt jetzt nach --> Die Datei ist in Wirklichkeit nicht vorhanden, ABER darauf bin ich auch schon gekommen, und habe vor dem Start der Schleife noch eine pause eingefügt, und nachgesehen, ob die datei existiert oder nicht. Raus kam--> Sie ist vorhanden.

Dann habe ich noch verschieden Schreibweisen ausprobiert:
for /f "skip=2" %%z in ('%file%.txt') do type %%z
for /f "skip=2" %%z in ("%file%.txt") do type %%z
Kann mir jemand sagen, was ich falsch gemacht habe?

Danke schonmal im Voraus

MfG Karsten
Mitglied: bastla
03.07.2010 um 15:00 Uhr
Hallo Karsten!

Da ja in "%file%.txt" Dateinamen (mit oder ohne Pfad) stehen müssten: Könnte es sein, dass im Namen (oder Pfad) von %file% oder der ausgelesenen Datei Leerzeichen enthalten sind? Wenn ja:
for /f "usebackq skip=2 delims=" %%z in ("%file%.txt") do type "%%z"
Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
03.07.2010 um 18:23 Uhr
Danke erstmal
Komische Sache, funktioniert so halb deine Lösung.

es wird der richtige Output angegeben, allerdings :
1. es werden nur 72 der eigentlich 120 angezeigt /// Es können auch mehr Gesamt-Zeilen sein , es werden aber trotzdem IMMER (nach 5 Tests) nur 72 Zeilen im CMD-Fenster angezeigt
2. Fehlermeldung kommt trotzdem
3. Batch schließt einfach

Auf Wunsch kann ich ja auch mal eine .txt-Datei posten

MfG Karsten
Bitte warten ..
Mitglied: bastla
03.07.2010 um 18:50 Uhr
Hallo Karsten!
Auf Wunsch kann ich ja auch mal eine .txt-Datei posten
Wäre zweifelsohne eine gute Idee ...

... und auch, woher %file% stammt, ist nicht ganz uninteressant.

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
03.07.2010 um 19:10 Uhr
ok ich poste erst mal die komplette Batch:
01.
@echo off & setlocal 
02.
chcp 1252>nul 
03.
set ue=ü 
04.
set ae=ä 
05.
set oe=ö 
06.
set Uue=Ü 
07.
set Aae=Ä 
08.
set Ooe=Ö 
09.
set ss=ß 
10.
chcp 850>nul 
11.
 
12.
title IP-Scan Autostart 
13.
:range 
14.
echo. 
15.
set /p bc=Geben sie den IP-Broadcast an bis zu dem gepingt werden soll (max.254):  
16.
if not defined bc goto :range 
17.
if /i (%bc%) GEQ (255) goto :range 
18.
:filen 
19.
echo. 
20.
set /p file=Geben sie einen Dateinamen an, in dem der Output gespeichert wird:  
21.
if not defined bc goto :filen 
22.
del %file%.txt 2>nul 
23.
 
24.
for /f "tokens=1,3 delims=:" %%i in ('ipconfig/all^|findstr "IP-Ad"^|findstr /n $') do ( 
25.
  call :start %%j 
26.
)     
27.
 
28.
 
29.
goto :eof  
30.
 
31.
:start 
32.
       for /f "tokens=1,2,3 delims=." %%a in ("%~1") do set ipa=%%a.%%b.%%c. 
33.
start "IP-Scan" /wait "ipscan.exe" %ipa%0 %ipa%%bc% %file%.txt -h 
34.
pause 
35.
for /f "usebackq skip=2 delims=" %%z in ("%file%.txt") do type "%%z" 
36.
echo Beliebige Taste zum Beenden dr%ue%cken 
37.
pause >nul 
38.
del %file%.txt 2>nul 
39.
goto :eof  
und hier mal sone txt:
This file was generated by Angry IP Scanner 
Visit http://www.angryziber.com/ for the latest version 
 
 
Scanned 192.168.2.0 - 192.168.2.254 
03.07.2010 18:21:47 
 
IP                    Ping                  Hostname               
 
192.168.2.1           9 ms                  speedport.ip           
192.168.2.2           Dead                  N/S                    
192.168.2.3           Dead                  N/S                    
192.168.2.4           Dead                  N/S                    
192.168.2.5           Dead                  N/S                    
192.168.2.6           Dead                  N/S                    
192.168.2.7           Dead                  N/S                    
192.168.2.8           Dead                  N/S                    
192.168.2.9           Dead                  N/S                    
192.168.2.10          Dead                  N/S                    
192.168.2.11          Dead                  N/S                    
192.168.2.12          Dead                  N/S                    
192.168.2.13          Dead                  N/S                    
192.168.2.14          Dead                  N/S                    
192.168.2.15          Dead                  N/S                    
192.168.2.16          Dead                  N/S                    
192.168.2.17          Dead                  N/S                    
192.168.2.18          Dead                  N/S                    
192.168.2.19          Dead                  N/S                    
192.168.2.20          Dead                  N/S                    
192.168.2.21          Dead                  N/S                    
192.168.2.22          Dead                  N/S                    
192.168.2.23          Dead                  N/S                    
192.168.2.24          Dead                  N/S                    
192.168.2.25          Dead                  N/S                    
192.168.2.26          Dead                  N/S                    
192.168.2.27          Dead                  N/S                    
192.168.2.28          Dead                  N/S                    
192.168.2.29          Dead                  N/S                    
192.168.2.30          Dead                  N/S                    
...                                                                                         <--- Den teil hab ich mal rausgekürzt, aber man kann sich ja denken was dahin kommt        
192.168.2.94          Dead                  N/S                    
192.168.2.95          Dead                  N/S                    
192.168.2.96          Dead                  N/S                    
192.168.2.97          Dead                  N/S                    
192.168.2.98          Dead                  N/S                    
192.168.2.99          Dead                  N/S                    
192.168.2.100         Dead                  N/S                    
192.168.2.101         0 ms                  karsten-z33v.Speedport_W_700V 
192.168.2.102         5 ms                  BRW00234DDD6A6B        
192.168.2.103         Dead                  N/S                    
              
Und wie siehts mit den 72 Zeilen aus? Lässt sich da vielleicht was machen?

MfG Karsten
Bitte warten ..
Mitglied: bastla
03.07.2010 um 20:04 Uhr
Hallo Karsten!

"type" dient dazu, den Inhalt einer Datei anzuzeigen - gibt es demnach Dateien mit Namen wie "192.168.2.1" oder "192.168.2.73", bzw könntest Du kurz den eigentlichen Sinn der Aktion beschreiben?

Vielleicht könnte Dich ja eine Zeile der Art
findstr /b "[0-9][0-9][0-9]\." "%file%.txt"
oder auch
findstr /b "[0-9][0-9][0-9]\." "%file%.txt"|findstr /v "Dead"
eher Deinem Ziel näherbringen ...

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
03.07.2010 um 20:18 Uhr
Das zweite funktioniert super, bis auf ein kleines Manko:
Die Überschrift ist weg, aber damit kann ich leben
Ein großes DANKESCHÖN!!

Der Sinn der ganzen Aktion (ich meine jetzt alles/die komplette Batch) lässt sich erahnen. Ich will Halt einen IP-Bereich mithilfe des Programms "AngryIP-Scanner" anpingen.

Und der Sinn der type-Geschichte:
Ich wollte halt ein temporäres Log-File, welches dann ohne die ersten beiden Zeilen in dem konsolenfenster angezeigt wird, und dazu hab ich bis jetzt immer "type" benutzt, oder ist das ein falscher Befehl? Und Nein, es gibt keine Dateien mit solchen Namen

MfG Karsten
Bitte warten ..
Mitglied: bastla
03.07.2010 um 20:22 Uhr
Hallo Karsten!

Der Befehl zum Schreiben in das Konsolenfenster ist "echo" ...
Die Überschrift ist weg, aber damit kann ich leben
Musst Du aber nicht:
more +2 "%file%.txt"|findstr /v "Dead"
Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
03.07.2010 um 20:29 Uhr
Mit echo wärs dann also so?:
echo < blub.txt
Danke auch für den neuen Teil, werd ich sofort einbauen
Bitte warten ..
Mitglied: bastla
03.07.2010 um 20:36 Uhr
Hallo Karsten!
Mit echo wärs dann also so?:
echo < blub.txt
Du wolltest doch die Zeilen des Logfiles per "for"-Schleife einzeln ausgeben - darauf hatte sich das "echo" bezogen; für die Ausgabe der kompletten Datei ist "type" natürlich ok (und wenn Du die Datei ab einer bestimmten Zeile haben willst, dann "more +Anzahl_zu_überspringender_Zeilen") ...

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
03.07.2010 um 20:49 Uhr
Ahh gut ok.
1. Ich habs mal so probiert:
01.
echo. 
02.
more +2 "%temp%\templog.txt"|findstr /v "Dead" 
03.
echo. 
04.
echo. 
05.
echo Beliebige Taste zum Beenden dr%ue%cken 
06.
pause >nul
2. Und mal so:
01.
echo. 
02.
more +2 "%temp%\templog.txt"|findstr /v "Dead" 
03.
findstr /b "[0-9][0-9][0-9]\." "%temp%\templog.txt"|findstr /v "Dead" 
04.
echo. 
05.
echo. 
06.
echo Beliebige Taste zum Beenden dr%ue%cken 
07.
pause >nul
Warum kommt bei beiden Versionen das gleiche Ergebnis?Bei 2. müsste es doch doppelt sein oder nicht?

MfG Karsten
Bitte warten ..
Mitglied: bastla
03.07.2010 um 20:59 Uhr
Hallo Karsten!
Bei 2. müsste es doch doppelt sein oder nicht?
Ist es bei mir auch mit den von Dir geposteten Testdaten ...

Vermutlich wird bei Dir
findstr /b "[0-9][0-9][0-9]\."
keine Ausgabe erzeugen (gesucht wird damit nach Zeilen, die mit 3 Ziffern und einem Punkt beginnen) ...

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
03.07.2010 um 21:04 Uhr
Doch auf einmal schon, oder ich hab mir nen Hitzeschlag geholt, dass ich eben nich vernüftig geschaut habe. Und auf einmal versteh ich auch das Zeug, was du mir eben geschrieben hast .

Danke nochmal

MfG Karsten
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Fehler in Schleife
gelöst Frage von miczarBatch & Shell2 Kommentare

Hallo zusammen, nachdem ich das letzte Problem weitestgehend selber lösen konnte, stehe ich nun vor einem neuen. Dieser Code ...

Batch & Shell
Batch: Syntaktischer Fehler in For-Schleife
gelöst Frage von CopyPasteBatch & Shell14 Kommentare

Hallo, ich hoffe, ihr könnt mir hier auf die Sprünge helfen. Ich schreibe relativ viele Batchscripte um mir die ...

Batch & Shell
Batch Schleife als FOR-SCHLEIFE
gelöst Frage von mp2711Batch & Shell2 Kommentare

Mit den FOR-Schleifen habe ich mich leider bislang zu selten auseinander gesetzt, aber da ich sonst gerade nicht weiter ...

Microsoft Office
Vereinfachen einer Schleife
Frage von Jens1975Microsoft Office1 Kommentar

Hallo, ich bin neu und versuche mich jetzt mit VBA Ich möchte die Funktion Autofill durch eine Schleife ersetzen. ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Entwicklung
VBS: alle PDF-Dateien in einem Ordner gleichzeitig öffnen
gelöst Frage von JuweeeEntwicklung9 Kommentare

Hallo, ich habe in deiner Ordnerstruktur (.\Tagesberichte\xx.18\) mehrere dynamische PDF-Formulare (mit LCD erstellt). Die Berichtsformulare sind im Layout alle ...