powershell scripting null

¿Cómo asigno un valor nulo a una variable en PowerShell?



scripting null (3)

Estas son variables automáticas, como $null , $true , $false etc.

about_Automatic_Variables , consulte https://technet.microsoft.com/en-us/library/hh847768.aspx?f=255&MSPPError=-2147217396

$NULL $null is an automatic variable that contains a NULL or empty value. You can use this variable to represent an absent or undefined value in commands and scripts. Windows PowerShell treats $null as an object with a value, that is, as an explicit placeholder, so you can use $null to represent an empty value in a series of values. For example, when $null is included in a collection, it is counted as one of the objects. C:/PS> $a = ".dir", $null, ".pdf" C:/PS> $a.count 3 If you pipe the $null variable to the ForEach-Object cmdlet, it generates a value for $null, just as it does for the other objects. PS C:/ps-test> ".dir", "$null, ".pdf" | Foreach {"Hello"} Hello Hello Hello As a result, you cannot use $null to mean "no parameter value." A parameter value of $null overrides the default parameter value. However, because Windows PowerShell treats the $null variable as a placeholder, you can use it scripts like the following one, which would not work if $null were ignored. $calendar = @($null, $null, “Meeting”, $null, $null, “Team Lunch”, $null) $days = Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday" $currentDay = 0 foreach($day in $calendar) { if($day –ne $null) { "Appointment on $($days[$currentDay]): $day" } $currentDay++ } Appointment on Tuesday: Meeting Appointment on Friday: Team lunch

Quiero asignar un valor nulo a una variable llamada $dec , pero me da errores. Aquí está mi código:

import-module activedirectory $domain = "domain.example.com" $dec = null Get-ADComputer -Filter {Description -eq $dec}


Si el objetivo es simplemente listar todos los objetos de la computadora con un atributo de descripción vacío, intente esto

import-module activedirectory $domain = "domain.example.com" Get-ADComputer -Filter ''*'' -Properties Description | where { $_.Description -eq $null }


Usa $dec = $null

De la documentation :

$ null es una variable automática que contiene un valor NULL o vacío. Puede usar esta variable para representar un valor ausente o indefinido en comandos y scripts.

PowerShell trata $ null como un objeto con un valor, es decir, como un marcador de posición explícito, por lo que puede usar $ null para representar un valor vacío en una serie de valores.