2015-03-04 6 views
-1

У меня есть сценарий powershell, который проверяет, доступен ли IP-адрес или нет, и в конце он подсчитывает, сколько доступно и сколько нет.Изменить цвет фона/переднего плана переменной powershell

Могу ли я изменить цвет фона/переднего плана используемых $ & $ переменных?

Clear-Host 
$Ping = New-Object System.Net.Networkinformation.ping 
$IP = Read-Host 'What ip range you want to scan (eg. 192.168.0.)?' 
$pused = 0 
$pavail = 0 
for ($i=1; $i -le 254; $i++) 
{ 
       $Status = $Null 
       $IPAddress = $IP + $i 
       $Status = ($Ping.Send("$IPAddress", 1)).Status 

       if ($Status -eq "TimedOut") 
       { 
       Write-Host "$IPAddress is available!" -BackgroundColor Green 
       $avail = $pavail++ 
       } else { 
       Write-Host "$IPAddress is in USE!" -BackgroundColor Red 
       $used = $pused++ 
       } 
} 
Write-Host "" 
Write-Host $used -BackgroundColor Red "IPs currently in use" -foregroundcolor "black" 
Write-Host "" 
Write-Host $avail "IPs currently available" -BackgroundColor Green -foregroundcolor "black" 
+0

Что вы спрашиваете? Вы уже не изменили цвет? '$ used' и' $ avail' также бесполезны, просто используйте '$ pused' и' $ pavail'. – arco444

+0

Почему вы используете запись-хост вообще? Подумайте о возврате объекта –

+0

@jisaak, что случилось с использованием 'write-host'? Это похоже на простой скрипт, который выводит информацию на экран, поэтому я не понимаю, почему это неправильно. – arco444

ответ

1

Единственный способ, которым я могу думать, чтобы делать то, что вы хотите, за счет использования нескольких Write-Host линий.

Write-Host "" 
Write-Host -NoNewline $pused -ForegroundColor Black -BackgroundColor Red 
Write-Host " IPs currently in use" 
Write-Host "" 
Write-Host -NoNewline $pavail -ForegroundColor Black -BackgroundColor Green 
Write-Host " IPs currently available" 

Вы можете использовать параметр -NoNewline так, что будет по-прежнему Ouput печати на той же строке в консоли.

+0

, который именно то, что я хотел. Благодарю. Не знал о параметре -newewline :) – Fishy

Смежные вопросы