Imagen: nd3000, Getty Images/iStockphoto

La consola PowerShell (PS) de Microsoft es un marco poderoso para la administración de aplicaciones y dispositivos a nivel de software al combinar herramientas basadas en la interfaz de línea de comandos (CLI) con las tecnologías de secuencias de comandos de Microsoft para formatear un lenguaje para facilitar la automatización de tareas administrativas.

Para aquellos familiarizados con el venerable ejecutable CMD, PowerShell funciona de manera muy similar en la superficie. Ingrese una secuencia de comandos, agregue la sintaxis adecuada para llamar a funciones específicas y ejecútelo en las computadoras de destino para provocar una determinada acción. Es una simplificación excesiva del proceso, pero funciona bien para entrenar el núcleo de cómo funciona en CMD y PowerShell.

VER: Administre Active Directory con estos 11 scripts de PowerShell (Premium de TechRepublic)

Si bien este artículo está más orientado a los usuarios novatos de PowerShell y aquellos con poca experiencia con él, los usuarios más avanzados pueden encontrar útil esta información, ya que explico algunos de los conceptos más difíciles de entender de PS, así como el camino a seguir. comprender por qué algunas cosas funcionan y otras no.

PowerShell es diferente en el sentido de que su alcance es mucho más rápido porque fue diseñado desde cero teniendo en cuenta la administración y la automatización. La sintaxis también es diferente; sigue un formato de verbo-sustantivo que especifica la acción a realizar primero, seguida del nombre del comando. PowerShell permite realizar modificaciones de forma local o remota y en una o más máquinas, según sea necesario. Además, los caracteres especiales se usan de manera diferente, lo que permite que los cmdlets se encadenen para formar secuencias de comandos más grandes y complejas que funcionan hacia un enfoque de administración más holístico.

Índice
  • ¿Qué son los cmdlets?
  • ¿Qué son los ajustes y cómo funcionan?
  • ¿Qué son los mods?
  • ¿Hay una sección de ayuda a la que pueda acudir en PowerShell?
  • ¿Puedo obtener una lista de los cmdlets disponibles?
  • ¿Es posible borrar la pantalla de la consola, como en CMD?
  • Consejos y tutoriales de PowerShell
  • ¿Qué son los cmdlets?

    Según Microsoft, "un cmdlet es un comando ligero que se usa en el entorno de Windows PowerShell". Cmdlets es el término de Microsoft para los comandos que se ejecutan desde PowerShell. Así como los comandos populares como ipconfig, ping y winver son comandos nativos de CMD.exe, los cmdlets son tipos de comandos nativos de PowerShell.

    Al igual que CMD, los cmdlets de PowerShell se pueden actualizar con cada actualización de versión de Windows Management Framework. Sin embargo, a diferencia de CMD, los cmdlets están contenidos en módulos que permiten la introducción de nuevos cmdlets, otorgando a PowerShell una mayor funcionalidad al importar módulos en una sesión existente. Hablaré más sobre los módulos más adelante.

    VER: 10 cmdlets de PowerShell que puede usar en lugar de comandos CMD (República Tecnológica)

    ¿Qué son los ajustes y cómo funcionan?

    Continuando con nuestro ejemplo usando CMD.exe como modelo de comparación, los parámetros en PowerShell funcionan de manera muy similar a los interruptores en CMD. Los parámetros se usan para incluir funciones avanzadas para identificar, seleccionar, apuntar o ejecutar un cmdlet en cualquier cantidad de dispositivos.

    Según el tipo de cmdlet que se ejecute, estarán disponibles ciertos parámetros que son exclusivos de ese cmdlet específico. Además, hay parámetros comunes que son intrínsecos a PowerShell y están disponibles para todos los cmdlets que realizan funciones específicas, que a menudo se usan para probar, depurar y verificar que los cmdlets funcionan (o funcionarán) correctamente.

    ¿Qué son los mods?

    Los módulos existen en PowerShell para proporcionar bibliotecas de funciones que realizan tareas. El módulo en sí es un archivo que actúa como una colección de cmdlets que reflejan la tarea común que buscan realizar. Por ejemplo, los cmdlets que se enfocan en la administración de Active Directory (AD) y se pueden usar para leer/escribir datos hacia/desde AD residen en el módulo de Active Directory que se instala de manera predeterminada cuando el servidor remoto de herramientas de administración de AD (RSAT) está instalado en el cliente. el ordenador.

    Los módulos, delimitados por la extensión PSM1, no hacen nada por sí solos hasta que se cargan en la sesión de PowerShell. Este proceso de carga del módulo en PowerShell se produce ejecutando el siguiente cmdlet, que importa el módulo a la sesión, lo que hace que los cmdlets asociados con él estén disponibles para el administrador solo durante esa sesión. Una vez cerrado, será necesario volver a importar el módulo cada vez que se ejecute una nueva sesión.

    Módulo de importación -Nombre "ActiveDirectory"

    ¿Hay una sección de ayuda a la que pueda acudir en PowerShell?

    Apelar a nuestra experiencia CMD.exe, agregando el "/?" a pedido daría una breve descripción del comando así como un desglose de los diferentes interruptores disponibles y varios ejemplos del comando presentado en la pantalla.

    Microsoft ha incluido un completo sistema de ayuda para PowerShell en forma de un cmdlet que se escribe antes del cmdlet con el que está buscando ayuda, que proporciona una sinopsis que explica qué ordena el cmdlet, la sintaxis asociada con la ejecución del cmdlet y un completo descripción del cmdlet, incluidos vínculos útiles para ayudar a los administradores a hacerlo bien.

    Además, dado que Get-Help es un cmdlet en sí mismo, está sujeto a algunos parámetros que agregan funciones útiles para nuevos usuarios y profesionales, como se explica a continuación:

    • -ejemplos— Muestra ejemplos del cmdlet en ejecución.
    • -detallado: muestra información detallada sobre el cmdlet.
    • -completo: muestra toda la colección de información sobre un cmdlet.
    • -en línea: Abre el sitio web de Microsoft TechNet que contiene la información más reciente sobre un cmdlet.

    Una última cosa útil sobre el cmdlet de ayuda en PowerShell es que se puede actualizar sobre la marcha si su dispositivo está conectado a Internet. Al ejecutar el cmdlet hermano "Update-Help", PowerShell se conectará a los servidores de Microsoft para descargar las últimas versiones de los archivos Get-Help y actualizar los archivos almacenados localmente.

    ¿Puedo obtener una lista de los cmdlets disponibles?

    PowerShell también incluye un cmdlet para esta función. Al ejecutar el cmdlet Get-Command, PowerShell mostrará una lista actualizada de todos los cmdlets disponibles, con formato alfabético e incluyendo la fuente o el módulo al que pertenecen. Esta lista puede ser lo suficientemente extensa como para revisarla en su totalidad, por lo que Microsoft ha incluido parámetros para ayudar a reducir la lista de una manera más enfocada.

    Obtener comando -ListImported: limita la lista a los cmdlets disponibles para la sesión actual.

    Get-Command -Module "ModuleName"— Limita la lista a solo los cmdlets disponibles para el módulo mencionado.

    Además, si está buscando información sobre un solo cmdlet específico, se puede incluir solo sin la necesidad de parámetros adicionales, de la siguiente manera:

    Obtener comando "CmdletName"

    ¿Es posible borrar la pantalla de la consola, como en CMD?

    Otro retroceso a CMD.exe que usa "cls" para borrar la CLI, PowerShell tiene un método similar que es más fácil de recordar. Ingresar el término "borrar" y presionar la tecla Intro arrojará el mismo resultado: la pantalla de la consola se borrará, eliminando todos los cmdlets ejecutados anteriormente y sus comentarios posteriores, incluidos los errores.

    Si bien esta no es una descripción exhaustiva de PowerShell, mi objetivo es ayudar a aquellos con poca o ninguna experiencia con PowerShell a comprender mejor las potentes funciones incluidas en PS. Además, brindo contexto sobre cómo funciona el marco para que los usuarios puedan comenzar a comprender los conceptos básicos, lo que, junto con las pruebas del mundo real, puede iniciarlos en el camino hacia una mayor comprensión mientras los ayuda a sentirse lo suficientemente cómodos con la consola para eventualmente hacer la transición de CMD. .

    Consejos y tutoriales de PowerShell

    Si desea obtener más información sobre el uso de PowerShell, lea estos consejos sobre cómo personalizar la configuración de PowerShell, desinstalar Edge en Windows 10 con PowerShell y usar PowerShell para administrar las actualizaciones de Microsoft en Windows.