¿Cómo hago que los parámetros sean obligatorios en PowerShell?¿Cómo hacer que los parámetros sean obligatorios en PowerShell?
22
A
Respuesta
27
Se especifica que en un atributo encima de cada parámetro de la siguiente manera:
function Do-Something{
[CmdletBinding()]
param(
[Parameter(Position=0,mandatory=$true)]
[string] $aMandatoryParam,
[Parameter(Position=1,mandatory=$true)]
[string] $anotherMandatoryParam)
process{
...
}
}
9
Para hacer un parámetro obligatorio añadir un "Mandatory = $ true" a la descripción del parámetro. Para que un parámetro sea opcional, simplemente deje la instrucción "Obligatoria".
Este código funciona tanto para los parámetros de script y función:
[CmdletBinding()]
param(
[Parameter(Mandatory=$true)]
[String]$aMandatoryParameter,
[String]$nonMandatoryParameter,
[Parameter(Mandatory=$true)]
[String]$anotherMandatoryParameter
)
Asegúrese de que la declaración de "parámetro" es la primera de ellas (a excepción de los comandos y líneas en blanco), ya sea en el guión o la función.
Puede usar el cmdlet "Get-Help" para verificar los parámetros se han definido correctamente:
PS C:\> get-help Script.ps1 -full
[...]
PARAMETERS
-aMandatoryParameter <String>
Required? true
Position? 1
Default value
Accept pipeline input? false
Accept wildcard characters?
-NonMandatoryParameter <String>
Required? false
Position? 2
Default value
Accept pipeline input? false
Accept wildcard characters?
-anotherMandatoryParameter <String>
Required? true
Position? 3
Default value
Accept pipeline input? false
Accept wildcard characters?
Cuestiones relacionadas
- 1. ¿Cómo hacer que algunos filtros sean obligatorios en tastypie?
- 2. Parámetros de powershell condicional
- 3. WCF: ¿hay algún atributo para hacer que los parámetros en OperationContract sean necesarios?
- 4. ¿Cómo hacer que los miembros de struct sean privados?
- 5. ¿Cómo puedo hacer que los enlaces sean blancos?
- 6. ¿Cómo hacer que los controladores Grails sean más DRY?
- 7. ¿Cómo puedo hacer que los elementos HTML no sean resaltables?
- 8. Validación Jquery: Cómo hacer que los campos sean rojos
- 9. ¿Cómo indicar los campos obligatorios?
- 10. ¿Cómo hacer que powershell sea menos detallado en los errores?
- 11. ¿Cómo hacer que mis aplicaciones sean "personalizables"?
- 12. ¿Cómo hacer que las propiedades sean privadas?
- 13. condicional que especifican los parámetros del conmutador en PowerShell
- 14. ¿Hacer que los bucles anidados sean más eficientes?
- 15. ¿Cómo hacer miembros readonly en powershell?
- 16. ¿Cómo puedo hacer que las texturas sean transparentes en OpenGL?
- 17. Jenkins: cómo hacer los parámetros necesarios en una compilación parametrizada?
- 18. ¿Cómo pasar parámetros dinámicos en Powershell?
- 19. En R, ¿cómo hacer que los puntos sean transparentes al usar scale_size en ggplot2?
- 20. ¿Cómo hacer que los submódulos de Git sean más fáciles para los no programadores?
- 21. Hacer que TeamCity reconozca los mensajes de Powershell
- 22. Parámetros de función en PowerShell
- 23. ¿Cómo hacer que las páginas php/html sean seguras/https?
- 24. ¿Cómo hacer que estas funciones tipadas dinámicamente sean seguras?
- 25. DataGridView: ¿Cómo hacer que algunas celdas sean no seleccionables?
- 26. C# Array, ¿Cómo hacer que los datos en una matriz sean distintos entre sí?
- 27. ¿Cómo puedo hacer que las propiedades de los archivos de propiedades sean obligatorias en Spring?
- 28. ¿Cómo puedo hacer que las cookies sean seguras (solo https) por defecto en los rieles?
- 29. ¿Cómo hacer que los caracteres de nueva línea sean visibles en HTML textarea?
- 30. Cómo hacer que los ID de modelo en Rails sean impredecibles y aleatorios
curiosidad, lo que sucede cuando digamos un .BAT llama un .ps1 y un parámetro obligatorio que queda fuera. ¿Cómo es la respuesta/error de PS1? – Quanda
Cuando llama a una secuencia de comandos de PowerShell sin proporcionar los parámetros obligatorios, la secuencia de comandos le solicita interactivamente antes de ejecutarla, p. "Proporcione valores para los siguientes parámetros: aMandatoryParameter:" – llmora