Witam. Chciałem pobawić się trochę w CMD, i natrafiłem na mały problem. Chciałem napisać odpowiednik tego programu w PowerShellu, ale w cmd:
Try {
$HighPerf = powercfg -l | %{if($_.contains("Wysoka wydajno†")) {$_.split()[3]}}
$LowPerf = powercfg -l | %{if($_.contains("Oszcz©dzanie energii")) {$_.split()[3]}}
$CurrPlan = $(powercfg -getactivescheme).split()[3]
if ($CurrPlan -ne $HighPerf) { powercfg -setactive $HighPerf}
else { powercfg -setactive $LowPerf}
}
Catch { Write-Warning -Message "Jakiś cholerny skrzat namieszał;/" }
Jednak nie wiem jak przypisać wartosci wyników polecen do zmiennych:
SET H1= 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
SET L1= a1841308-3541-4fab-bc81-f71556f20b4a
SET HighPerf= Power Scheme GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (Wysoka wydajność)
SET LowPerf= Power Scheme GUID: a1841308-3541-4fab-bc81-f71556f20b4a (Oszczędzanie energii)
SET CurrPlan= powercfg /getactivescheme // tutaj przypisuje tylko tego stringa po znaku równa się.
następny problem to warunek if
IF %CurrPlan% EQU %HighPerf% powercfg /S %L1%
ELSE powercfg /S %H1%
Prosze wskażcie błędy w tych wypocinach proszę. Warunek if w ogóle nie działa.
Pozdrawiam