Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Test-Path (http://forum.oszone.net/showthread.php?t=310882)

Ubiquiti 28-01-2016 10:25 2599961

Test-Path
 
Код:

$TP = Test-Path $env:SystemDrive\BOOTSECT.BAK
If ($TP -eq 'False')
{
Write-Host "системный диск не загрузочный"
}
else
{
Write-Host "системный диск загрузочный"
}

привет всем!!! Такой код не могу понять файла BOOTSECT.BAK нету на системном диске а PS выводит Write-Host "системный диск загрузочный" в чем мой касяк

Kazun 28-01-2016 10:31 2599965

$TP -eq 'False' на $TP -eq $false

greg zakharov 28-01-2016 10:51 2599974

Код:

Write-Host "Системный диск $(switch(Test-Path $env:SystemDrive\bootsect.bak){$true{''}$false{'не '}})загрузочный"

Ubiquiti 28-01-2016 10:59 2599979

greg zakharov write-host это просто для теста там будет код

greg zakharov 28-01-2016 11:22 2599987

Ubiquiti, что с того? Используйте switch, чтобы не допускать ошибок при сравнении.

Ubiquiti 28-01-2016 11:59 2600000

Цитата:

Цитата greg zakharov
Ubiquiti, что с того? Используйте switch, чтобы не допускать ошибок при сравнении. »

мне есть разница Я сильно так уже не знаю PowerShell и мой вариант мне воспринемаеться лучше чем Ваш.

Код:

$TP = Test-Path $env:SystemDrive\BOOTSECT.BAK
If ($TP -eq $False)
{
Write-Host "системный диск не загрузочный"
}
else
{
Write-Host "системный диск загрузочный"
}


kaatm 28-03-2017 02:14 2723643

Для $null, 0, @() и "" достаточно просто так:
Код:

if ($TP) { … }
И Write-Host тоже лишнее, туда по умолчанию выводится.


Время: 17:25.

Время: 17:25.
© OSzone.net 2001-