Almacenar en un fichero las coordenadas del ratón

Convertir la entrada de micrófono a texto

convertir-la-entrada-de-microfono-a-texto

Obtener el color de un pixel y almacenarlo en un fichero html

2. Programación en PowerShell para administradores de sistemas

Introducción

Una de las funciones que tiene el sistema operativo es la gestión de la memoria.

Los programas cuando se ejecutan y se convierten en procesos, se almacenan en la memoria, además, almacenan valores temporales que son necesarios para la ejecución correcta de los procesos.

En PowerShell se pueden utilizar datos y almacenarlos en memoria hasta que se cierra PowerShell.

Variables

En programación, las variables son espacios reservados en la memoria que pueden cambiar de contenido a lo largo de la ejecución de un programa.

Una variable corresponde a un área reservada en la memoria principal del ordenador.

Constantes

Existe un tipo de variable que no cambia el valor durante la ejecución del programa y se conoce con el nombre de constante.

Ámbito

El ámbito de una variable (llamado „scope“ en inglés) es la zona del programa en la que se define la variable.

Tipos

En PowerShell no es necesario establecer el tipo de dato aunque se puede hacer indicando el tipo de variable entre corchetes [ ].

Numéricas

Caracteres

Booleanos

Fechas

Arrays

Cadenas

Ficheros

Operaciones aritméticas

Operaciones lógicas

Operaciones de comparación

Sentencias condicionales

Sentencias de repetición

Funciones

1. Introducción a PowerShell para administradores de sistemas

Introducción

PowerShell es una línea de comandos con tecnología de scripting basada en tareas que proporciona a los administradores de tecnologías de la información (TI) un control integral y la posibilidad de automatizar las tareas de administración del sistema.

PowerShell se ha creado sobre .NET Framework, Common Language Runtime (CLR) y .NET Framework, acepta y devuelve objetos de .NET.

Consola

Para ejecutar la línea de comandos de Powershell hay que ejecutar el programa powershell.exe.

powershellexe

powershell-mac-os-shell

Versiones

Hay distintas versiones de Powershell, cada versión incorpora nuevas ventajas respecto a la anterior.

version-powershell-windows

Cmdlets

Los comandos (cmdlets, se pronuncia command-let) de PowerShell son sencillos de recordar usan el sistema verbo-nombre para llamar a los comandos, los verbos y los nombres están en inglés.

Los cmdlets se puede ver con el comando:

get-command

powershell-mac-os-get-command

Ayuda

Para obtener ayuda de un cmdlet hay que ejecutar el cmdlet:

get-help

powershell-mac-os-get-help

Alias

Los cmdlets se puede llamar de forma abreviada o mediante un alias.

get-alias-powershell-windows

alias-en-powershell-mac-os

Canalizaciones

Concepto importante que permite unir dos cmdlets de la siguiente forma: la entrada de un cmdlet es la salida de otro cmdlet.

canalizacion-powershell-windows

Utilidades básicas

Seleccionar

Selecciona objetos o propiedades del objeto.

get-process-select-object-name-powershell-windows

powershell-mac-os-select-objectAgrupar

Agrupa objetos que contienen el mismo valor para las propiedades especificadas.

get-process-group-object-name-windows-powershell

powershell-mac-os-group-objectOrdenar

Ordena objetos por el valor de las propiedades.

get-process-sort-object-name-powershell-windows

powershell-mac-os-sort-objectContar

Cuenta elementos de los objetos o las propiedades de los mismos.

count-powershell-windows

powershell-mac-countComparar

Compara dos conjuntos de objetos.

Dar formato

Utiliza una vista personalizada para dar formato a la salida.

get-process-select-object-threads-format-custom-powershell-windows

powershell-mac-os-format-customEntrada y salida

Envía la salida a un archivo.

get-process-out-file-procesos-txt-powershell-windows

powershell-mac-out-fileWhere

Proporciona una forma para filtrar los datos devueltos por otros cmdlets.

get-process-where-object-cpu-lt-5-powershell-windows

powershell-mac-where-objectGrid

Envía la salida interactiva en una ventana separada.

get-process-where-object-cpu-lt-5-out-gridview-powershell-windowsMeasure

Proporciona una manera de generar rápidamente estadísticas (contar, valores máximos promedio, suma, mínimos y medios) para un objeto.

get-process-measure-object-property-cpu-minimum-maximum-average-powershell-windows

Seguridad

El cmdlet Get-ExecutionPolicy le permite ver qué secuencias de comandos de Windows PowerShell se permite ejecutar en el equipo.

get-executionpolicy-windows-powershell

El cmdlet Set-ExecutionPolicy le permite cambiar qué secuencias de comandos de Windows PowerShell (si los hay) se permitirá ejecutar en el equipo.

Windows PowerShell tiene cuatro diferentes políticas de ejecución:

  • Restringido – Las secuencias de comandos no se pueden ejecutar. Windows PowerShell sólo se puede utilizar en modo interactivo.
  • AllSigned – Sólo guiones firmados por un editor de confianza se pueden ejecutar.
  • RemoteSigned – Los guiones descargados deben ser firmados por un editor de confianza antes de que se pueden ejecutar.
  • Unrestricted – No hay restricciones de libre disposición; todos los scripts de Windows PowerShell se pueden ejecutar.

set-executionpolicy-windows-powershell

Entorno de scripting integrado (ISE)

La versión ISE se llama powershell_ise.exe.

powershell_iseexe

Scripting

Windows Powershell tiene su propio lenguaje de scripting para crear secuencias de comandos.

Guardar el estado de un script y pararlo si la batería es baja

Almacenar información sobre el hardware del equipo en un fichero