Escape powershell Переменная в HTML - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь написать отчет в powershell, а затем отправил вывод на страницу HTML.я выясняю, как я могу отформатировать мою переменную из сценария powershell в HTML.Если я получу неправильный вывод, я сделаю так, чтобы на моей html-странице был синий шрифт.

Вот мой сценарий powershell

$os =  (get-wmiobject -class win32_operatingsystem).caption


function checkosvers {
if($os -contains "*Server*" ){
write-output "This is a server"}

else{
write-output "Its a $os"}
}

$osvers = checkosvers | foreach {$PSItem -replace ("Its a $os","<font  color='blue'>Its a $os</font>")}
$osvers | ConvertTo-Html -Fragment -as List  | Out-File -FilePath "C:\Users\XX\Desktop\mypage.html"

, если я помещу строку на местопеременной, он кажется синим на моей html-странице {$ PSItem -replace («Это $ os», «Это $ os»)}

1 Ответ

0 голосов
/ 01 марта 2019

Вы можете сделать его фильтр и просто выводить то, что вы хотите.Я хотел бы, чтобы он принимал значения из конвейера для простоты использования, поэтому что-то вроде этого:

filter checkosvers {
param([Parameter(ValueFromPipeline)]$osVer)
if($osVer -match "Server" ){
    "This is a server"
}else{
    "<font color='blue'>Its a $osVer</font>"}
}

Тогда вы можете просто передать ему такие вещи, как:

PS C:\Windows\system32> 'Microsoft Windows Server 2012 R2 Datacenter'|checkosvers
This is a server

или ...

PS C:\WINDOWS\system32> (get-wmiobject -class win32_operatingsystem).caption|checkosvers
<font color='blue'>Its a Microsoft Windows 10 Enterprise</font>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...