# Información básica

PowerShell es una consola de comandos multifuncional y un lenguaje de scripts utilizado para automatizar tareas en Windows. Sus capacidades permiten gestionar el sistema, automatizar procesos y crear scripts interactivos.

{% embed url="<https://docs.microsoft.com/es-es/powershell/?view=powershell-7.2>" %}

## Formas de mostrar datos

* Salida de texto en la consola `[Console]::WriteLine("PowerShell")`
* Mostrar una ventana de mensajes completa (MessageBox) `[System.Windows.Forms.MessageBox]::Show()`
* Entrada de datos del usuario (InputBox)

  `[Microsoft.VisualBasic.Interaction]::InputBox()`

## Comandos auxiliares

* Llamar a la ayuda `Get-Help ForEach-Object -Parameter InputObject`
* Pausa en la ejecución del script (retraso de 15 segundos) `Start-Sleep -s 15`

## Cmdlets

Los cmdlets son pequeños comandos específicos de PowerShell que realizan una función determinada. Tienen un formato universal: verbo-sustantivo (por ejemplo, `Get-Help`, `Get-Process`, `Start-Service`). Además, muchos cmdlets tienen alias cortos para una llamada rápida:

* `Get-Process` → `gps`
* `Out-GridView` → `ogv`

Esto ayuda a acelerar el trabajo y a escribir código compacto.

* Ver propiedades y métodos del objeto proceso: `Get-Process | Get-Member`
* Visualización interactiva de datos: `Get-Process | Out-GridView`
  * Los datos se muestran en una tabla conveniente, que permite al usuario ordenar y filtrar manualmente los elementos por varios parámetros.
  * Solo es necesario escribir en la consola de Sherpa: `$Object | Out-GridView`, y se abrirá una ventana con los datos, permitiendo ver el contenido de las variables durante la depuración.
  * Fácil de integrar en el código del Robot en Sherpa Designer para mostrar datos durante la ejecución del script. Cada una de estas ventanas se mostrará mientras se ejecuta el código (es decir, la ventana se cerrará cuando finalice la ejecución del script o se presione el botón de detener la ejecución del script).

[Más detalles](https://winitpro.ru/index.php/2021/04/21/out-gridview-gui-tablica-v-skripte-powershell/) o [aquí](https://forsenergy.com/ru-ru/windowspowershellhelp/html/8f657905-0eaf-4d10-ae93-3217eb97e0e3.htm) o en [la documentación](https://docs.microsoft.com/es-es/dotnet/api/system.windows.controls.gridview?view=netframework-4.8).

## Estructura léxica

{% embed url="<https://learn.microsoft.com/es-es/powershell/scripting/lang-spec/chapter-02?view=powershell-7.5&viewFallbackFrom=powershell-7>" %}

## Operaciones aritméticas

{% embed url="<https://learn.microsoft.com/es-es/powershell/module/microsoft.powershell.core/about/about_arithmetic_operators?view=powershell-7.5&viewFallbackFrom=powershell-7.1>" %}

PowerShell soporta operaciones aritméticas estándar y puede ser utilizado para cálculos complejos.

Por ejemplo, medir la velocidad de ejecución de un bloque de comandos: `1..10 | Measure-Command -Expression { <expresión> }`, donde `Measure-Command` permite determinar el tiempo de ejecución de una expresión determinada.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sherparpa.ru/es/sherpa-rpa/sherpa-designer/sherpa-designer-otvety-na-chasto-zadavaemye-voprosy/powershell/osnovnye-svedeniya.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
