Solución:
La respuesta de @ MikeZ es bastante correcta al explicar el ejemplo en la pregunta, pero en cuanto a abordar la pregunta título, ¡hay más que decir! los ${}
notación en realidad tiene dos usos; el segundo es una joya escondida de PowerShell:
Es decir, puede utilizar esta notación de corchetes para realizar operaciones de E / S de archivos si proporciona una ruta calificada por la unidad, como se define en las rutas de proveedores de la página de MSDN.
(La imagen de arriba proviene de la Guía completa de puntuación de PowerShell, un gráfico mural de una página disponible gratuitamente para descargar, adjunto a mi artículo reciente en Simple-Talk.com).
Ambos son solo declaraciones de parámetros. Los dos fragmentos son equivalentes. Cualquiera de las dos sintaxis se puede utilizar aquí, sin embargo, la forma entre llaves permite caracteres que de otro modo no serían legales en los nombres de las variables. De la especificación de lenguaje de PowerShell 3.0:
Hay dos formas de escribir un nombre de variable: A nombre de variable entre corchetes, que comienza con $, seguido de un conjunto delimitado por corchetes de uno o más caracteres casi arbitrarios; y un nombre de variable ordinaria, que también comienza con $, seguido de un conjunto de uno o más caracteres de un conjunto más restrictivo de lo que permite un nombre de variable entre llaves. Cada nombre de variable ordinario se puede expresar utilizando un nombre de variable entre corchetes correspondiente.
De about_Variables
Para crear o mostrar un nombre de variable que incluya espacios o caracteres especiales, escriba el nombre de la variable entre llaves. Esto indica a Windows PowerShell que interprete literalmente los caracteres del nombre de la variable.
Por ejemplo, el siguiente comando crea y luego muestra una variable llamada “guardar-elementos”.
C:PS> ${save-items} = "a", "b", "c" C:PS> ${save-items} a b c
Son equivalentes. Es solo una forma alternativa de declarar una variable.
Si tiene caracteres que son ilegales en una variable normal, usaría las llaves (piense en ello como “escapar” del nombre de la variable).