Zum Inhalt springen

DOS: Zeilenzahl in Variable holen


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
@echo on

@gdisk2 /status >gd.ak1

@

find /n/v "dummystring" gd.ak1 | find "[5]" >nul

if not errorlevel 1 goto platten4

@

find /n/v "dummystring" gd.ak1 | find "[4]" >nul

if not errorlevel 1 goto platten3

@

find /n/v "dummystring" gd.ak1 | find "[3]" >nul

if not errorlevel 1 goto platten2

@

find /n/v "No fixed disks" gd.ak1 | find "[2]" >nul

if not errorlevel 1 goto platte1

@

find /n/v "dummystring" gd.ak1 | find "[1]" >nul

if not errorlevel 1 goto platte0

@

echo fehler in programmlogik

goto ende

@

:platten4

@echo vier platten!

@goto ende


:platten3

@echo drei platten!

@goto ende


:platten2

@echo zwei platten!

@goto ende


:platte1

@echo eine platte!

@goto ende


:platte0

@echo null platten!

@goto ende


:ende 

@echo ---fertig---

Geschrieben
@echo on

@gdisk2 /status >gd.ak1

@

find /n/v "dummystring" gd.ak1 | find "[5]" >nul

if not errorlevel 1 goto platten4

@

find /n/v "dummystring" gd.ak1 | find "[4]" >nul

if not errorlevel 1 goto platten3

@

find /n/v "dummystring" gd.ak1 | find "[3]" >nul

if not errorlevel 1 goto platten2

@

find /n/v "No fixed disks" gd.ak1 | find "[2]" >nul

if not errorlevel 1 goto platte1

@

find /n/v "dummystring" gd.ak1 | find "[1]" >nul

if not errorlevel 1 goto platte0

@

echo fehler in programmlogik

goto ende

@

:platten4

@echo vier platten!

@goto ende


:platten3

@echo drei platten!

@goto ende


:platten2

@echo zwei platten!

@goto ende


:platte1

@echo eine platte!

@goto ende


:platte0

@echo null platten!

@goto ende


:ende 

@echo ---fertig---

Moin,

in wie fern ist das die Lösung der Aufgabe? In welcher Variablen steht denn nun die Zahl?

Gruß

Reinhold

(mehrfacher Träger der "goldenen Axt" als Haarspalter des Monats

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

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...