Comandos de Powershell más útiles: Hoja de trucos con ejemplos

Publicado: 2023-07-23
Contenido
  • Primeros pasos con PowerShell
  • Inmersión profunda en las estructuras de comando de PowerShell
    • Gestión de archivos y carpetas
    • Gestión de procesos del sistema
    • Administración de red
    • Gestión de directorio activo
    • Gestión de registro de eventos
    • Supervisión y análisis del rendimiento
    • Sesiones remotas y de PowerShell
    • Políticas de Seguridad y Ejecución
  • Técnicas Avanzadas de PowerShell
  • 30 comandos adicionales de PowerShell a continuación
  • Conclusión
  • Preguntas más frecuentes
    • ¿Cómo uso los comandos de Windows PowerShell?
    • ¿Cómo puedo obtener una lista de comandos de PowerShell en Windows 7?
    • ¿Puedo usar PowerShell en sistemas que no sean Windows?
    • ¿Puedo escribir scripts en PowerShell?
    • ¿Puedo usar PowerShell para administrar entornos basados ​​en la nube?
Comandos de Powershell más útiles: Hoja de trucos con ejemplos

Si alguna vez ha tenido el placer de sumergirse en el mundo de la administración de sistemas, es probable que haya encontrado los comandos de Windows PowerShell y PowerShell. Es una herramienta útil, un lenguaje de secuencias de comandos de shell que le brinda acceso al funcionamiento interno de su sistema operativo.

Eclipsa al símbolo del sistema (CMD) tradicional y ofrece más potencia, flexibilidad y control.

A diferencia de CMD, que utiliza instrucciones de línea de comandos simples, Windows PowerShell emplea un lenguaje más extenso, utilizando una lista de comandos de PowerShell o cmdlets para tareas complejas del sistema.

Como administrador del sistema, su trabajo puede ver mejoras dramáticas con esta herramienta en su arsenal. No se trata solo de hacer las cosas más fáciles; se trata de eficiencia, precisión y la capacidad de automatizar tareas repetitivas.

Primeros pasos con PowerShell

Ahora que está familiarizado con lo que es PowerShell, es hora de sumergirse. Comenzar es bastante simple. Tienes dos rutas principales:

  • la consola PowerShell
  • el entorno de scripting integrado (ISE).

La consola es su interfaz de línea de comandos. Es una ruta directa para que sus comandos alcancen y manipulen el sistema. ISE, por otro lado, es su patio de recreo para la creación de secuencias de comandos. Es donde puede escribir, probar y depurar sus scripts de PowerShell en un entorno amigable y centrado en el usuario.

Para ayudarlo a ponerse en marcha, cubramos algunos comandos básicos de PowerShell .

Comando Powershell obtener ayuda

Descripción : muestra información de ayuda sobre los comandos y temas de Windows PowerShell .

Ejemplo : al escribir Get-Help Get-Process se mostrará ayuda para el comando Get-Process.

Como su nombre indica, Get-Help es su guía a través del universo de PowerShell . Es un manual incorporado que le permite explorar la funcionalidad de otros comandos.

Comando de obtención de Powershell

Descripción : recupera una lista de todos los comandos disponibles en PowerShell.

Ejemplo : Ingresar Get-Command -Module ActiveDirectory enumerará todos los comandos disponibles en el módulo ActiveDirectory.

Windows PowerShell

Get-Command es otra herramienta valiosa en su hoja de trucos de comandos de PowerShell . Con él, puede ver todos los comandos que PowerShell tiene para ofrecer.

Inmersión profunda en las estructuras de comando de PowerShell

Los comandos de PowerShell se basan en tres estructuras principales: cmdlets, alias y scripts.

Los cmdlets (Command-lets) son el corazón de PowerShell. Son comandos ligeros que realizan funciones específicas. A diferencia de los programas ejecutables tradicionales, los cmdlets son objetos de clase de .NET Framework, un bocado, ¿verdad? En pocas palabras, son piezas de código que hacen cosas, como obtener datos, cambiar la configuración del sistema o ejecutar procesos.

Proceso de obtención de PowerShell

Descripción : recupera una lista de todos los procesos en ejecución

Ejemplo : Ingresar Get-Process le mostrará todos los procesos que se están ejecutando actualmente en su sistema.

Los alias son solo accesos directos para cmdlets. Por ejemplo, en lugar de escribirGet-ChildItem, simplemente puede escribirdir, que es más rápido y fácil de recordar.

Los scripts, por último, son archivos de texto que contienen una serie de cmdlets para ejecutar en orden. Son la columna vertebral de la automatización, lo que le permite ejecutar tareas complejas sin entrada manual. Con este conocimiento y su creciente lista de comandos de PowerShell , está en camino de convertirse en un profesional de PowerShell.

Gestión de archivos y carpetas

Estar al mando de un sistema de archivos puede ser una tarea abrumadora. Afortunadamente, PowerShell echa una mano. Con un arsenal de cmdlets, puede administrar archivos y carpetas sin problemas.

PowerShell Obtener elemento secundario

Descripción : muestra los elementos y los elementos secundarios en las ubicaciones especificadas.

Ejemplo : ingrese Get-ChildItem C:\Documents y verá todos los elementos dentro del directorio Documentos.

Este cmdlet es un miembro crucial de su lista de comandos de PowerShell para la administración de archivos. No solo enumera archivos y carpetas, sino que también puede profundizar en los directorios y revelar los tesoros ocultos que contienen.

Nuevo artículo de PowerShell

Descripción : crea un elemento nuevo, como un archivo o una carpeta.

Ejemplo : escriba New-Item -Path .-Nombre "archivo.txt" -Tipo de elemento "archivo" -Valor "directorio actual del archivo de demostración de nuevo elemento de PowerShell".

y observe cómo aparece un nuevo archivo, file.txt, en su carpeta Documentos.

Elemento nuevo de Windows PowerShell

Gestión de procesos del sistema

Ahora, cambiemos de marcha y hablemos de los procesos del sistema. Piense en ellos como el equipo detrás del escenario de una producción teatral, trabajando diligentemente detrás de escena para asegurarse de que el espectáculo se desarrolle sin problemas. PowerShell ofrece comandos para monitorear, manipular y administrar estos héroes anónimos.

Proceso de obtención de PowerShell

Descripción: Recupera el estado de una lista de procesos especificados.
Ejemplo: Ingresar Get-Process mostrará todos los procesos que se están ejecutando actualmente en su máquina.

El anterior es uno de los comandos de PowerShell más utilizados en Windows 10 para administrar los procesos del sistema. Proporciona una instantánea de lo que sucede detrás de la pantalla.

Trabajar con servicios

Al igual que los procesos del sistema, los servicios son piezas fundamentales en la rueda que mantienen nuestros sistemas funcionando sin problemas. Hay programas que se ejecutan en segundo plano y, con PowerShell, puede vigilarlos de cerca.

Descripción : Recupera el estado de los servicios en una computadora local o remota.

Ejemplo : cuando ejecuta Get-Service, obtendrá una actualización de estado en todos los servicios en su computadora.

Servicio de detención de comandos de PowerShell

Descripción : Detiene uno o más servicios en ejecución.

Ejemplo : Stop-Service -Name “serviceName” detendrá el servicio especificado.

Estos ejemplos de comandos de PowerShell solo rascan la superficie de lo que puede hacer con PowerShell. La verdadera belleza de PowerShell radica en su flexibilidad y en la medida en que se puede personalizar para satisfacer sus necesidades específicas.

Administración de red

Administrar una red puede ser como intentar resolver un rompecabezas con piezas infinitas. Afortunadamente, con PowerShell, no carece de herramientas para facilitar este trabajo. Aquí hay un par de comandos principales de PowerShell para ayudarlo.

Comando de PowerShell Conexión de red

Descripción : Muestra información de diagnóstico para una conexión.

Ejemplo : escriba Test-NetConnection para probar la conexión de red de su máquina.

Conexión de red de prueba de Windows PowerShell

Comando de PowerShell Dirección NetIP

Descripción : Muestra la configuración de la dirección IP.

Ejemplo : Ejecutar Get-NetIPAddress revela los detalles de la dirección IP de su máquina.

Estos cmdlets pueden ayudar a diagnosticar problemas y revelar detalles de configuración de red esenciales.

Gestión de directorio activo

En el mundo de la administración de redes, Active Directory (AD) es el administrador de la oficina y realiza un seguimiento de todos los recursos de la red. PowerShell viene repleto de comandos útiles para que la administración de AD sea muy sencilla.

Comando de PowerShell Get-ADUser

Descripción : recupera un objeto de usuario o realiza una búsqueda para recuperar varios objetos de usuario.

Ejemplo : Get-ADUser -Filter * mostrará una lista de todos los usuarios en su AD.

Comando Powershell Nuevo-ADUser

Descripción : crea un nuevo usuario de AD.

Ejemplo : con un comando como New-ADUser -Name "JohnDoe", puede crear un nuevo usuario llamado JohnDoe.

Gestión de registro de eventos

Los registros de eventos son como el diario de su sistema, registrando sus pensamientos y acciones. Son una herramienta invaluable para la resolución de problemas. Aquí se explica cómo ejecutar comandos de PowerShell en Windows 10 que interactúan con sus registros de eventos.

Comando de PowerShell Get-EventLog

Descripción : Obtiene los eventos en un registro de eventos o una lista de los registros de eventos.

Ejemplo : Get-EventLog -LogName System mostrará los registros de eventos del sistema.

Borrar registro de eventos

Descripción : borra todas las entradas de los registros de eventos especificados.

Ejemplo : Clear-EventLog -LogName "Aplicación" hará borrón y cuenta nueva para el registro de eventos de su aplicación.

Es importante recordar que, si bien estos son algunos de los comandos de PowerShell más comunes , existen muchos más para explorar. La adaptabilidad y la robusta funcionalidad de PowerShell la convierten en una herramienta indispensable para cualquier administrador de sistemas.

Supervisión y análisis del rendimiento

Al igual que una orquesta bien afinada, su sistema necesita ajustes regulares para funcionar de la mejor manera. La supervisión del rendimiento garantiza que los recursos de su sistema se utilicen de manera eficaz. Estos son algunos comandos de Windows PowerShell que le permiten echar un vistazo bajo el capó.

Comando de PowerShell Obtener-Proceso

Descripción : recupera el estado de una lista de procesos especificados.

Ejemplo : Ejecutar Get-Process muestra todos los procesos que se están ejecutando actualmente en su máquina.

Ejecución de Get-Process en Windows PowerShell

Medida-Comando PowerShell

Descripción : mide el tiempo que se tarda en ejecutar bloques de script.

Ejemplo : Measure-Command {Get-Process} revelará el tiempo necesario para ejecutar el comando Get-Process.

Obtener contador de PowerShell

Descripción : Obtiene datos de contador de rendimiento de equipos locales y remotos.

Ejemplo : Get-Counter -Counter “\Processor(_Total)\% Processor Time” le dará estadísticas de uso de la CPU.


Lea también: ¿Cómo acelerar el rendimiento de un disco duro en Windows?


Sesiones remotas y de PowerShell

Una fortaleza clave de PowerShell radica en su capacidad para administrar computadoras remotas. Puede establecer sesiones o conexiones persistentes con máquinas remotas. Su hoja de trucos de comandos de PowerShell no estaría completa sin estos cmdlets.

Introduzca PSSession PowerShell

Descripción : Inicia una sesión interactiva con una computadora remota.

Ejemplo : Enter-PSSession -ComputerName Server01 le permite interactuar directamente con Server01.

Nueva PSSession PowerShell

Descripción : crea una nueva sesión de PowerShell.

Ejemplo : New-PSSession -ComputerName Server02 crea una nueva sesión con Server02.

Quitar PSSession PowerShell

Descripción : Cierra una o más sesiones de PowerShell.

Ejemplo : Remove-PSSession -Session $s cierra una sesión almacenada en la variable $s.

Trabajar con perfiles de PowerShell

Al igual que su perfil personal, un perfil de PowerShell es un script que se ejecuta cuando se inicia Powershell y define su entorno. Estos son algunos comandos cmdlet de PowerShell para administrar sus perfiles.

PowerShell de ruta de prueba

Descripción : determina si existen todos los elementos de la ruta.

Ejemplo : Test-Path $profile verificará si existe un perfil.

Nuevo artículo de PowerShell

Descripción : crea un elemento nuevo, como un archivo o una carpeta.

Ejemplo : si Test-Path $profile devuelve False, New-Item -Type file -Path $profile -Force creará un nuevo perfil.

Bloc de notas de PowerShell

Descripción : Abre archivos en el Bloc de notas.

Ejemplo : Bloc de notas $perfil abre su perfil en el Bloc de notas, lo que le permite editarlo.

Comando del Bloc de notas de Windows PowerShell

Al comprender y utilizar estos comandos, puede personalizar su entorno de PowerShell para adaptarlo a sus preferencias y estilo de trabajo.

Políticas de Seguridad y Ejecución

En el ámbito de PowerShell, la seguridad es como un guardián inquebrantable que garantiza que los scripts y los comandos se ejecuten de forma segura. Estos son algunos comandos básicos de PowerShell que lo ayudan a definir y comprender sus políticas de ejecución.

PowerShell Get-ExecutionPolicy

Descripción : Obtiene las políticas de ejecución para la sesión actual.

Ejemplo : Get-ExecutionPolicy muestra su política de ejecución actual.

PowerShell Set-ExecutionPolicy

Descripción : establece la política de ejecución para la sesión de PowerShell.

Ejemplo : Set-ExecutionPolicy RemoteSigned establece la política para ejecutar solo scripts firmados por un editor de confianza.

PowerShell Get-AuthenticodeSignature

Descripción : Obtiene la firma digital de un script o archivo.

Ejemplo : Get-AuthenticodeSignature C:\Scripts\Test.ps1 muestra la firma digital del script Test.ps1.

Técnicas Avanzadas de PowerShell

A medida que profundice en el océano de PowerShell, descubrirá que está repleto de cmdlets mucho más que básicos. Las funciones avanzadas ofrecen una mayor flexibilidad y funcionalidad, lo que le permite trabajar de manera más inteligente, no más difícil. A continuación se muestran algunos ejemplos de comandos de PowerShell para ilustrar las posibilidades.

Comando de PowerShell: Invocar-Comando

Descripción : ejecuta comandos en equipos locales y remotos.

Ejemplo : Invoke-Command -ComputerName Server01 -ScriptBlock {Get-Process} ejecuta el comando Get-Process en Server01.

Exportación de PowerShell-Csv

Descripción : Convierte objetos .NET en cadenas CSV y almacena los resultados en un archivo CSV.

Ejemplo : Obtener-Proceso |Export-Csv -Path .\ProcessList.csv guarda su lista de procesos en un archivo CSV.

Lista de procesos de Windows PowerShell

PowerShell ConvertTo-Json

Descripción : Convierte un objeto a su representación JSON.

Ejemplo : Obtener-Proceso |ConvertTo-Json convierte su lista de procesos al formato JSON.

Objeto de selección de PowerShell

Descripción : Selecciona las propiedades especificadas de un objeto o conjunto de objetos.También puede seleccionar objetos únicos de una matriz.

Ejemplo : Obtener-Proceso |Select-Object -Property Name,ID muestra solo el nombre y la identificación de sus procesos.

Objeto Dónde de PowerShell

Descripción : filtra la entrada de la canalización, lo que permite controlar qué objetos se pasarán a lo largo de la secuencia de comandos.

Ejemplo : Obtener-Proceso |Where-Object {$_.CPU -gt 10} muestra procesos que utilizan más de 10 unidades de CPU.

PowerShell para cada objeto

Descripción : Realiza una operación contra cada uno de un conjunto de objetos de entrada.

Ejemplo : Obtener-Proceso |ForEach-Object { $_.Name + ” ” + $_.Id } muestra una lista de nombres de procesos junto con sus ID.

Estos útiles comandos de PowerShell demuestran las técnicas avanzadas que puede emplear para aprovechar aún más el poder de PowerShell. Desde invocar comandos en computadoras remotas hasta filtrar y formatear la salida, las posibilidades son amplias.

Recuerde, el cmdlet Get-Help es su amigo cuando no está seguro de cómo ejecutar los comandos de PowerShell . Simplemente escriba Get-Help seguido del cmdlet con el que necesita ayuda. Esta lista de comandos principales de PowerShell es solo el comienzo; El potencial de PowerShell está limitado únicamente por su imaginación.

30 comandos adicionales de PowerShell a continuación

Dominio Descripción
Fuera de archivo Envía la salida a un archivo.
Ordenar-Objeto Ordena los objetos por valores de propiedad.
Conjunto-variable Establece el valor de una variable.
Host de lectura Lee una línea de entrada de la consola.
Host de escritura Escribe una salida personalizada en un host.
Agregar contenido Agrega contenido a los elementos especificados, como agregar líneas a un archivo.
Copiar elemento Copia un elemento de una ubicación a otra.
ruta de prueba Prueba la existencia de una ruta y devuelve True si la ruta existe, de lo contrario, False.
Obtener la fecha Obtiene la fecha y hora actual.
Clear-Host Borra la pantalla en el programa anfitrión.
Comparar objeto Compara dos conjuntos de objetos.
Convertir a HTML Convierte objetos .NET en HTML que se pueden mostrar en un navegador web.
Obtener credencial Obtiene un objeto de credencial basado en un nombre de usuario y una contraseña.
Get-Random Obtiene un número aleatorio o selecciona objetos al azar de una colección.
Nuevo objeto Crea una instancia de un objeto .NET Framework o COM.
Renombrar artículo Cambia el nombre de un elemento en un espacio de nombres de proveedor de Windows PowerShell.
Inicio-Sueño Suspende la actividad en un script por el período especificado.
Salida de escritura Envía los objetos especificados al siguiente comando en la canalización.
ruta dividida Devuelve la parte especificada de una ruta.
Ruta de unión Combina una ruta y una ruta secundaria en una sola ruta.
Para cada objeto Realiza una operación en cada elemento de una colección de objetos de entrada.
Donde-Objeto Selecciona objetos de una colección en función de sus valores de propiedad.
Proceso de inicio Inicia uno o más procesos en la computadora local.
Formato-Lista Da formato a la salida como una lista de propiedades en la que cada propiedad se muestra en una línea separada.
Formato-Tabla Da formato a la salida como una tabla.
Exportar-Clixml Crea una representación basada en XML de un objeto u objetos y la almacena en un archivo.
Importar-Clixml Importa un archivo CliXML y recrea los objetos guardados.
ConvertFrom-Csv Convierte propiedades de objetos en cadenas CSV en versiones CSV de los objetos originales.
ConvertTo-Csv Convierte objetos .NET en una serie de cadenas CSV.
Seleccionar cadena Encuentra texto en cadenas y archivos.

Conclusión

A estas alturas, debería tener una lista completa de los comandos de PowerShell y una idea clara de su potencial. Ya sea que esté automatizando tareas , administrando recursos de red o solucionando problemas, PowerShell es una herramienta indispensable para cualquier usuario o administrador de Windows.

Estos cmdlets de PowerShell simplemente arañan la superficie de lo que es posible. A medida que se sienta más cómodo con la consola, descubrirá nuevos comandos y creará scripts que satisfagan perfectamente sus necesidades.

Recuerde, el cmdlet Get-Help siempre está disponible para proporcionar ayuda con los comandos de PowerShell siempre que necesite más información sobre un cmdlet en particular. Simplemente escriba Get-Help seguido del cmdlet con el que necesita ayuda.

Preguntas más frecuentes

¿Cómo uso los comandos de Windows PowerShell?

Usar los comandos de Windows PowerShell es simple. Escribe el comando en la consola de PowerShell y presiona Enter. Si necesita ayuda con un comando en particular, simplemente escriba Get-Help seguido del comando que desea comprender mejor.

¿Cómo puedo obtener una lista de comandos de PowerShell en Windows 7?

Puede obtener una lista de comandos en PowerShell en Windows 7 escribiendo Get-Command en la consola y presionando Enter. Esto mostrará todos los cmdlets y funciones disponibles que puede usar.

¿Por qué mi Windows PowerShell no puede entender ningún comando?

Si PowerShell no comprende sus comandos, es posible que se deba a errores de sintaxis. Verifique su comando en busca de errores tipográficos o parámetros incorrectos. Además, asegúrese de estar usando la versión correcta de PowerShell para el comando que está tratando de ejecutar.

¿Puedo usar PowerShell en sistemas que no sean Windows?

Sí tu puedes. Con la llegada de PowerShell Core, PowerShell de Microsoft ya no se limita a Windows. También puede usarlo en macOS y Linux.

¿Puedo escribir scripts en PowerShell?

¡Absolutamente! PowerShell no es solo una interfaz de línea de comandos, sino también un lenguaje de secuencias de comandos. Puede crear scripts para automatizar tareas repetitivas, lo que puede ahorrarle mucho tiempo y esfuerzo.

¿Puedo usar PowerShell para administrar entornos basados ​​en la nube?

Sí, PowerShell es una poderosa herramienta para administrar entornos basados ​​en la nube. Muchos proveedores de la nube, incluidos Microsoft Azure y Amazon AWS, ofrecen módulos de PowerShell para interactuar con sus servicios.