Cmd If ()else(if) geht nicht

Mitglied: Saschaaaaa

Saschaaaaa (Level 1) - Jetzt verbinden

11.04.2016, aktualisiert 12.04.2016, 1330 Aufrufe, 2 Kommentare, 1 Danke

Hallo Leute,

ich habe mir ein kleines Script erstellt welches den PC herunterfährt wenn er 90 Minuten im Leerlauf ist UND ein bestimmter Ordner leer ist. Bekomme nun aber immer einen Fehler wenn ich beide Bedingungen erfüllt haben will. Einzeln funktionieren beide...

Es sieht so aus:
wenn ich nun in einer batch nur das habe funktioniert es....
if %cridle% GTR %idle%
shutdown -s -t 0
) else (
timeout 10
goto mpun
) (Natürlich werden vorher beide variablen genauso gesetzt wie oben)

Wieso klappt das nicht? hatte auch schon:
) elseif %cridle% GTR %idle% (.....
Das geht auch nicht....

1. Warum klappt das nicht?
2. Warum zeigt quser nicht mehr die leerlaufzeit an (es steht leerlaufzeit dort, ist aber seit systemstart)

Bin dankbar für jeden Tipp

Mit freundlichen Grüßen
Sascha

[Edit Biber] Codeformatierung, weil sonst keine Chance auf sinnvolle Hinweise. [/Edit]
Mitglied: rubberman
LÖSUNG 11.04.2016 um 23:00 Uhr
Hallo Sascha,

dein Code ist aufgrund fehlender Codeformatierung und wahllos hineingeschriebener Kommentare unlesbar. Ich vermute folgendes:
Variablen werden in einer Kommandozeile oder in einem, in Klammern eingefassten, Block von Kommandozeilen, nur einmal zum Wert expandiert.
Beispiel:
Bei einer Variable, die vor dem Block nicht definiert war, expandiert die Variable zu "nichts", was bei einem Vergleich einen Syntaxfehler auslöst, da dann auf der Seite mit der Variable das == allein steht.
Abhilfe könnte die verzögerte Variablenerweiterung sein.
Besser wäre aber, gleich mit der FOR Variablen zu arbeiten.

Grüße
rubberman
Bitte warten ..
Mitglied: Saschaaaaa
12.04.2016 um 22:09 Uhr
Sorry für die fehlende Formatierung!

Aber danke du hattest Recht.

Zitat von @rubberman:
Bei einer Variable, die vor dem Block nicht definiert war, expandiert die Variable zu "nichts", was bei einem Vergleich einen Syntaxfehler auslöst, da dann auf der Seite mit der Variable das == allein steht.

Die Variable muss vor der For Schleife definiert werden!
Bitte warten ..
Heiß diskutierte Inhalte
Windows Server
Infrastruktur für Firma
brainwashVor 20 StundenFrageWindows Server8 Kommentare

Hallo zusammen, kurze Erklärung zu meinem Problem Wir sind eine kleine Firma mit zwei Standorten im Bereich Brandschutz. Zur Zeit nutzen wir für unsere ...

Netzwerkprotokolle
Proxy Zugang von Extern
gelöst Jannik2018Vor 1 TagFrageNetzwerkprotokolle17 Kommentare

Hallo zusammen, ich habe mir einen Squid Proxy auf einer Linux VM aufgesetzt und möchte das man aus allen netzen drauf zugreifen kann allerdings ...

Windows Server
Windows 10 VM auf Server 2019 Essentials
jhuedderVor 1 TagFrageWindows Server10 Kommentare

Hallo, einer meiner Kunden möchte aus Kostengründen einen Windows Server 2019 (direkt auf einer physikalischen Maschine installiert) erwerben und dort für einen Außendienstler mit ...

Server-Hardware
Verkaufe RX300 S7 Server von Fuijutsu
HolzBrettVor 21 StundenAllgemeinServer-Hardware9 Kommentare

Hi, Ich wohne in Aachen und habe die Server von der Firma umsonst erhalten. Ich habe sie bereits überprüft (es geht alles). Ich möchte ...

Windows Server
Veeam Endpoint Backup FREE zur Sicherung eines DCs
gelöst takvorianVor 1 TagFrageWindows Server7 Kommentare

Hallo zusammen, ich habe hier bei mir 1 Hypervisor mit 4 VMs (darunter 1 DC) welche ich mittels backupAssist alle wegsichere. Klappt soweit auch ...

LAN, WAN, Wireless
WLan-unterstütztes Telefonieren iOS, Unifi
VisuciusVor 1 TagFrageLAN, WAN, Wireless8 Kommentare

Hallo. Ich bins (wieder) ;-) Guten Morgen, ich beobachte seit einer Umstellung ein "komisches Verhalten" und kann mir das gerade nicht erklären. Und vielleicht ...

LAN, WAN, Wireless
Heimnetzwerk mit VLAN - getrennter Internetzugang
gelöst anyibkVor 1 TagFrageLAN, WAN, Wireless5 Kommentare

Hallo liebe Community! Ich bastle seit einiger Zeit an einem recht besonderen Heimnetzwerkproblem. Wir haben einen neuen Glasfaseranschluss ins Haus (3 Parteien) bekommen und ...

LAN, WAN, Wireless
Verständnisfrage VPN Performance pfSense
flabsVor 1 TagFrageLAN, WAN, Wireless7 Kommentare

Moin Kollegen, ich betreibe 3 pfSense Firewalls an 3 Standorten. Zwischen Standort A und B gibt es einen IPSec Tunnel. Der läuft seit Jahren ...