Además de ejecutar cmdlets, también se pueden ejecutar funciones en Windows PowerShell. Windows PowerShell incluye funciones integradas y se pueden agregar funciones obtenidas de otros usuarios, así como escribir funciones propias.
Acerca de las funciones
Las funciones son un tipo de comando en Windows PowerShell. Se ejecutan escribiendo su nombre, exactamente igual que se ejecutan los cmdlets. Las funciones pueden tener parámetros al igual que los cmdlets y pueden tomar objetos de .NET como entrada y devolver objetos de .NET como resultado, exactamente igual que los cmdlets. De hecho, pueden realizar prácticamente todo lo que realizan los cmdlets.
La mejor cualidad de las funciones es que son muy fáciles de escribir. A diferencia de los cmdlets, que se escriben en C#, las funciones son una agrupación con nombre de expresiones y comandos de Windows PowerShell. Si puede escribir comandos en Windows PowerShell, también puede escribir funciones.
Buscar funciones
Las funciones son comandos, por lo que para buscar funciones se utiliza el cmdlet Get-Command.
Por ejemplo, para buscar todas las funciones en una sesión, escriba:
get-command -CommandType function
Windows PowerShell también incluye una unidad Function: que contiene todas las funciones de una sesión. Para navegar en la unidad Function:, utilice los mismos métodos que se utilizan para navegar en las unidades del sistema de archivos.
Para entrar en la unidad Function:, escriba:
cd function:
Para ver las funciones de la unidad Function:, escriba:
dir function:
Ejecutar funciones
Para ejecutar una función, basta con que escriba su nombre. Por ejemplo, para ejecutar la función Clear-Host, escriba:
clear-host
En la consola de Windows PowerShell, la función Clear-Host elimina todo el texto en la ventana de la consola. Podría comportarse de otra manera o no tener ningún efecto en otros programas de hospedaje.
Para utilizar los parámetros de una función, escriba el nombre de parámetro precedido de un guión y seguido de un valor, tal como haría con los parámetros de un cmdlet.
Por ejemplo, la función Help, que muestra los temas de Ayuda página a página, tiene los mismos parámetros que el cmdlet Get-Help. Para utilizar la función Help para obtener solamente los ejemplos del tema de Ayuda del cmdlet Get-Service, escriba:
help -name get-service -examples
Obtener la Ayuda de funciones
Las funciones pueden tener temas de Ayuda. Para buscar el tema de Ayuda de una función, utilice el cmdlet Get-Help. Este es el mismo cmdlet que se utiliza para obtener la Ayuda de los cmdlets.
Por ejemplo, para obtener la Ayuda de la función Disable-PSRemoting, escriba:
get-help Disable-PSRemoting
Puede utilizar todos los parámetros del cmdlet Get-Help para obtener la Ayuda de las funciones. Por ejemplo, para obtener solamente los ejemplos del tema de Ayuda de la función Disable-PSRemoting, escriba:
get-help Disable-PSRemoting -example
Escribir funciones
Una función es un grupo con nombre de comandos o expresiones. Para escribir una función simple, utilice el formato siguiente.
function <name> { <commands> }
Escriba function y un nombre para la función, e incluya los comandos entre llaves ({}).
Por ejemplo, si tiene que escribir repetidamente un comando determinado, como get-help get-member -examples
, puede ahorrar tiempo escribiendo una función que ejecute el comando. La función siguiente, denominada GMEX, ejecuta el comando.
function GMEX {get-help get-member -examples}
Después de escribir la función en el símbolo del sistema de Windows PowerShell (o copiarla y pegarla desde este tema) y presionar ENTRAR, puede utilizar la función en la sesión. Para ejecutar la función, escriba
Esta es una función simple, pero con solo unas líneas más, puede agregar parámetros, hacer que los parámetros sean opcionales u obligatorios, agregar mensajes de usuario y agregar un tema de Ayuda para la función. Según vaya aprendiendo más conceptos de Windows PowerShell, podrá escribir funciones avanzadas que tengan todas las características de los cmdlets.
Para obtener más información sobre cómo se escriben funciones, vea about_Functions, about_Comment_Based_Help y about_Functions_Advanced.
Guardar funciones
Cuando se abre Windows PowerShell, se está en una sesión de Windows PowerShell. La sesión dura el tiempo que transcurre hasta que se cierra la ventana de Windows PowerShell o hasta que se escribe
Para guardar las funciones que escriba con el fin de que estén disponibles en sesiones futuras de Windows PowerShell, cree un perfil de Windows PowerShell y guárdelas en dicho perfil.
Para obtener más información, vea about_Profiles.
Vea también