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

gelöst Per Batch erste Zeile aus TXT-Datei auslesen, in Variable speichern und dann vergleichen

Mitglied: mjay-core

mjay-core (Level 1) - Jetzt verbinden

22.05.2011 um 00:12 Uhr, 28480 Aufrufe, 5 Kommentare

Hallo Leute,
in einer TXT-Datei steht folgendes:
01.
38671360 
02.
 
Mit Leerzeichen nach dem Wert und neuer Zeile. Das interessiert mich jedoch nicht.

Ich möchte diesen Wert gerne einlesen, als Variable speichern und dann mit dem Inhalt einer anderen Variable vergleichen (größer als).
Das ganze soll dann in einer Batch-Datei ausführbar sein.

Ich versuche das jetzt schon ne Weile aber scheitere spätestens am Vergleich.
Wird das vielleicht als String und nicht als Int etc. eingelesen?

Danke für eure Hilfe.
Grüße
Mitglied: 60730
22.05.2011 um 00:38 Uhr
moin,

  • wie sehen denn deine bisherigen Versuche aus?

Gruß
Bitte warten ..
Mitglied: Friemler
22.05.2011 um 01:15 Uhr
Hallo mjay-core,

Batchscript arbeitet fast rein textorientiert, Ausnahme ist nur der Befehl SET mit dem Parameter /A, damit lassen sich Berechnungen durchführen.

Da hinter dem Wert noch ein Leerzeichen in der Textdatei steht, nimm am besten sowas wie im folgenden:
for /f "usebackq" %%v in ("DeineDatei.txt") do set "Variable=%%v"
Zum Verständnis verweise ich auf mein Tutorial zur FOR-Schleife.

Zum Thema Vergleich: IF /?

Gruß
Friemler
Bitte warten ..
Mitglied: QaMarath
22.05.2011 um 02:29 Uhr
Morgen,
also wenn du sagst das du aus einer datei nur die erste zeile auslesen willst,
würde ich das mit

set /p Wert=<Datei

lösen. Das /P muss da hin weil der user dadurch normalerweise zur eingabe aufgefordert wird,
in diesem Fall wird einfach die erste Zeile der Datei genutzt.
(Die Datei muss im selben Ordner wie deine Batch liegen, sonst musst du den gesamten Pfad angeben
was mit %Userprofile% oder anderen Umgebungsvariablen am besten geht.)

Das Leerzeichen nach dem Wert, entfernst du indem du die Variable %Wert%, die du oben erstellt hast,
noch einmal mit

set /a Wert=%Wert%

umwandelst, denn /A wird nur zum Rechnen oder sonstigem Zahlen-Kram benutzt. Sprich das Leerzeichen wird unwichtig und einfach entfernt.

Angenommen du willst den nun eingelesenen Wert mit der Zahl 10 vergleichen, bietet sich if /... an.
Es gibt da 6 besondere Operatoren, habs mal aus der cmd.exe kopiert:

EQU - gleich
NEQ - nicht gleich
LSS - kleiner als
LEQ - kleiner als ODER gleich
GTR - größer als
GEQ - größer als ODER gleich

Dann die ganz normale Form:

IF "%Wert%" LSS "10" @echo %Wert% ist kleiner als 10.

Für LSS kannst du nun jeden anderen Operator einsetzen.


Viel Spaß noch beim Vergleichen, ich hoffe ich konnte dir helfen!

QaMarath
Bitte warten ..
Mitglied: QaMarath
22.05.2011 um 02:33 Uhr
Ich bins noch mal,
sorry hatte nicht gesehen, das du in der Beschreibung schon "größer-als" gesagt hattest.

Also würden sich GTR bzw. GEQ anbieten. =)

QaMarath
Bitte warten ..
Mitglied: mjay-core
22.05.2011 um 08:37 Uhr
Ich danke euch für eure schnelle und gute Hilfe.
Besonders QaMarath hat es sehr gut und ausführlich beschrieben.
Meine Versuche waren richtig. Der Fehler war die Umwandlung der Werte damit verglichen werden kann.

Das hats gebracht:
set /a Wert=%Wert%

Jetzt klappt das was ich vor hatte. Vielen Dank!
Grüße
Bitte warten ..
Ähnliche Inhalte
PHP

TXT Datei auslesen und bestimmte Zeilen in Variable setzen

gelöst Frage von 126594PHP11 Kommentare

Hallo zusammen, vorweg muss ich sagen, ich bin (bis jetzt) absoluter Neuling was PHP angeht. Ich will aus einer ...

Batch & Shell

(BATCH:) Zeilenweise Txt auslesen und in eine Variable speichern

gelöst Frage von NincedBatch & Shell20 Kommentare

Hallo Leute, Ich weiß, es ist ein alter Hut, aber ich habe da ein paar Fragen bezüglich der for-Schleife ...

Batch & Shell

Einzelne Zeilen in txt Datei speichern und auslesen

gelöst Frage von noah1400Batch & Shell7 Kommentare

Liebe Forum-Mitglieder Ich habe da so eine Frage: Ich bin gerade dabei ein PW abfrage mit Batch zu machen. ...

Batch & Shell

Erste Zeile einer Excel Datei vergleichen

gelöst Frage von Memo66Batch & Shell8 Kommentare

Hallo zusammen, ich habe folgendes Szenario. Ich bekomme täglich eine .csv Datei zugeschickt. In der Datei sind nun in ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 2 TagenHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 3 TagenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 3 TagenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 3 TagenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Netzwerkmanagment im Haus mit Switch, Panel und pfsense
gelöst Frage von CorraggiounoNetzwerkmanagement19 Kommentare

hi zusammen, wir sind gerade dabei das ganze Haus bzw. die einzelnen Zimmer mit netzwerkdosen zu versorgen. Vom Keller ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

Google Android
Empfehlung: Android Ortungsapp
gelöst Frage von certifiedit.netGoogle Android13 Kommentare

Guten Morgen, grundsätzlich vorweg, ich wollte mich eben schlau machen, bzgl einer Ortungsapp, welche Androidbasiert einem anderen Androidsmartphone mitteilt, ...

Router & Routing
VPN hinter zweiter Fritzbox nutzen im Nachbarhaus
gelöst Frage von georg2204Router & Routing11 Kommentare

Hallo zusammen, ich blicke hier leider nicht mehr so ganz durch. In Haus 1 steht eine Fritzbox 7390, diese ...