PowerShell splatting: concepto y ejemplo

PowerShell splatting es una técnica que permite pasar un conjunto de argumentos a un cmdlet o una función utilizando un hash table (@{}) en lugar de proporcionar los argumentos directamente en la línea de comandos. Esto facilita la gestión y organización de los parámetros, especialmente cuando se trabaja con un gran número de ellos. El nombre «splat» proviene de la forma en que la notación del hash (@{}) se parece a un «splash» o «salpicadura» en el código.

Ejemplo de PowerShell splatting:

Supongamos que tienes un cmdlet que acepta varios parámetros, y en lugar de proporcionarlos directamente, decides usar splatting para hacer que el código sea más legible. Aquí hay un ejemplo con el cmdlet New-Item:

[crayon-6a619edbe3a25772112648/]

En este ejemplo:

  • Path, ItemType, y Force son parámetros del cmdlet New-Item.
  • En lugar de proporcionar estos parámetros directamente en la línea de comandos, los definimos como un hash table llamado $parametros.
  • Luego, utilizamos splatting (@parametros) para pasar esos parámetros al cmdlet.

Este enfoque hace que el código sea más legible y facilita la gestión de los parámetros, especialmente cuando tienes varios o cuando trabajas con scripts más extensos. Además, si necesitas modificar o añadir parámetros, solo necesitas actualizar el hash table en lugar de modificar cada instancia del cmdlet en tu código.