# PowerShell

PowerShell es un framework o marco de trabajo para la automatización de tareas y gestión de configuración de Microsoft, que consiste de una interfaz de línea de comandos y su lenguaje de scripting (de órdenes o guiones) asociado construidos en .NET Framework. PowerShell inicialmente fue un componente solamente de Windows, pero a partir del 18 de agosto de 2016 es de código abierto y multiplataforma.

## Enfoque

Muchos tutoriales de PowerShell abordan a PowerShell desde una perspectiva de automatización y de archivos de órdenes de línea de comandos suponiendo que el lector ya conoce de programación. Este curso toma una introducción académica más tradicional al enfoque de la programación, con la suposición de que una vez se comprenda la programación usando el lenguaje PowerShell, el lector podrá ser capaz de utilizar otros recursos para desarrollar los scripts que necesita.

## Preparación

Este es un curso de nivel universitario de un tercio de semestre. Los estudiantes ya deberían estar familiarizados con los conceptos introductorios a la computación y de soporte informático.

## Recursos

Las lecciones en este curso usan una variedad de recursos de información. Todos son gratuitos, aunque algunos requeren registro para poder acceder a ellos. En Wikiversidad se hace todo lo posible para evitar este último tipo de recursos a menos que la calidad de los mismos superen claramente la molestia. El libro en línea Master-PowerShell | With Dr. Tobias Weltner en Powershell.com es un recurso de alta calidad que también ofrece la opción de rechazar cualquier contacto.

## Lecciones
### Lección 1

En esta lección haremos un acercamiento a PowerShell y su entorno, veremos los conceptos básicos, cómo iniciar programas y obtener el programa anfitrión, y cómo consultar la ayuda local y recursos en línea sobre el tema.
* Introducción
* Evaluación de la lección 1

### Lección 2

En esta lección nos familiarizamos con la consola de PowerShell; aprendemos a utilizar los comandos Get-Command, Get-Date, Get-Process y Get-Service; utilizar la redirección para guardar los datos de salida como un archivo; y aprendemos a seleccionar, ordenar y filtrar contenido con las tuberías y Select-Object, Sort-Object, Where-Object.
* Consola
* Evaluación de la lección 2

### Lección 3

En esta lección aprenderemos cómo habilitar la ejecución de archivos de órdenes locales, utilizar los alias de los comandos, detener e iniciar servicios con archivos de órdenes PowerShell y utilizar Write-Host y Write-Output.
* ISE
* Evaluación de la lección 3

### Lección 4

* Variables

### Lección 5

* Expresiones

### Lección 6

* Condiciones

### Lección 7

* Bucles

### Lección 8

* Vectores y tablas hash

### Lección 9

* Funciones

### Lección 10

* Errores

### Lección 11

* Sistema de archivos

### Lección 12

* Procesamiento del registro de Windows

### Lección 13

* Gestión de sistemas

### Lección 14

* Registros de eventos

### Lección 15

* Otros temas

## Material adicional
### Bibliografía

* PowerShell.com: Master-PowerShell | With Dr. Tobias Weltner

### Recursos externos

* Microsoft Virtual Academy: Getting Started with PowerShell 3.0
* Microsoft Virtual Academy: Advanced Tools & Scripting with PowerShell 3.0
* TechNet: The Best Ways to Learn PowerShell