Jump to content

DOS: Zeilenzahl in Variable holen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo

Ich würde gern die Anzahl von Zeilen einer Datei in einer Variable einlesen (unter DOS, nicht in eienr DOS-Box).

 

Eine Datei sieht beispielweise so aus (ist eine Ausgabe von "gdisk /status"):

 

disk partitions cylinders ...

1 3 555

2 4 777

 

Wenn die Datei 2 Zeilen hat, möchte ich Befehl A ausführen.

Wenn die Datei 3 Zeilen hat, möchte ich Befehl B ausführen.

 

Wie geht das?

Geschrieben

Moin Uni184,

 

Du verzeihst mir sicherlich, wenn ich grad keinen Rechner neben mir stehen habe, wo ich auch testen kann.

 

Soweit ich es aus dem Gedächtnis zusammenbekommen, müsste es auch unter was-immer-Du-mit-DOS-meinst den Find.exe-Befehl exakt in seiner heutigen Funktionalität gegeben haben.

 

Dann:


find /n /v "BiberIsDerBeste" %DeineDatei%|find "[3]">nul
if errorlevel 1 goto BefehlA
goto BefehlB
[/Code]

--> Du suchst in Deiner Datei nach einem Text, den es (nach menschlichem Ermessen) nicht gibt, lässt Dir somit alle Zeilen nummeriert anzeigen und suchst in dieser Ausgabe nach der Zeilennummer 3 mit dem zweiten Find-Befehl.

Wenn die nicht gefunden wird,...(Rest siehe oben).

 

Schönes Wochenende

Biber

Geschrieben

Moin Uni184,

 

Jo, funktioniert jetzt, zwischen 1 und null Festplatten muss man halt extra prüfen.

Und mehr wie vier Platten ist auch komisch.

 

Den ersten Teil der Aussage kann ich ja noch nachvollziehen.

Den zweiten Teil....hmmmmm, also wenn Dir die Verkäufer im MediaMarkt einen DOS-Rechner mit mehr als 4 Platten angedreht haben, dann solltest Du gleich Montag früh nochmal hin.

 

Dann haben die sich einen kleinen Scherz mit Dir erlaubt.

 

Grüße

Biber

  • 1 Monat später...
Geschrieben
Du suchst in Deiner Datei nach einem Text, den es (nach menschlichem Ermessen) nicht gibt, lässt Dir somit alle Zeilen nummeriert anzeigen und suchst in dieser Ausgabe nach der Zeilennummer 3 mit dem zweiten Find-Befehl.

Wenn die nicht gefunden wird,...(Rest siehe oben).

Funktioniert, auch wenn der Kollege (Hallo S.F.) es im Kollegenkreis deine Lösung als "seine" ausgibt.

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...