16 comandos esenciales de PowerShell que debe conocer
Windows PowerShell es una potente aplicación basada en. NET Framework. Se basa en los comandos de PowerShell llamados cmdlets. Al combinarlos en un orden determinado, puede realizar casi cualquier operación desde la ventana de PowerShell. Para explicar cómo funciona, hemos seleccionado los comandos de PowerShell más esenciales.
Cómo usar los comandos de PowerShell
Para comenzar a usar cmdlets, debe iniciar PowerShell en modo Administrador desde el menú de búsqueda.
Comandos esenciales de PowerShell
PowerShell en Windows no es solo una interfaz de línea de comandos activa, sino también una ventana de secuencias de comandos y programación que puede ejecutar cualquier aplicación o proceso que desee. Si bien hay varios cientos de cmdlets, para comenzar, solo necesita aprender los más esenciales.
1. Clear-Host o Cls
¿Cometió un error al escribir o algo no salió según lo planeado? Afortunadamente, hay repeticiones en PowerShell. El práctico clear-host
comando puede borrar todo el texto de la pantalla. Simplemente escriba el comando en cualquier línea de su pantalla y todo desaparecerá instantáneamente.
También puede usar el cls
comando más simple, que se usa con frecuencia en el símbolo del sistema, con PowerShell. Estos dos comandos de texto claro son útiles cuando encuentra un mensaje de error.
Para evitar errores de tipeo en el símbolo del sistema o en la ventana de PowerShell, copie y pegue los comandos para mejorar la eficacia.
2. Convertir a HTML
Tener una gran cadena de HTML es más estético que mirar las capturas de pantalla de PowerShell desordenadas. También es útil cuando necesita compartir errores de secuencias de comandos y otros eventos de PowerShell con miembros del equipo que no son técnicos.
Todos los componentes de PowerShell utilizan. NET que podemos visualizar en la pantalla de PowerShell. Para que se muestren en una ventana completa del navegador, use el Convert-to-HTML
cmdlet. A continuación se muestra un ejemplo para ver todos los alias de PowerShell en la Web. Recuerde usar una línea separada antes de «Invoke-Item».
Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm
Tan pronto como ejecute el comando de conversión de HTML, PowerShell le pedirá que abra el archivo de salida con otra aplicación. El uso de un navegador producirá una lista de objetos, como alias.
3. Obtener comando
Hay principalmente dos tipos de comandos: alias y funciones. Los alias de PowerShell sirven como apodo para una función o cmdlet. Windows ha almacenado algunos alias de forma predeterminada, que puede recuperar mediante Get-Command
. También puede crear sus propios alias.
El otro tipo de comando en PowerShell son las funciones. Estos usan un verbo aprobado (como «obtener») y un sustantivo simple (como «StorageNode»).
Estamos utilizando una función de «Seleccionar objeto» (observe la combinación de verbo y sustantivo) con lo que se conoce como una variable de entorno para el nombre de la computadora para mostrar el nombre de la computadora local.
$env:computername | Select-Object
Las funciones son el punto de partida de la codificación avanzada de PowerShell. Puede usar funciones, como Start-process
, con parámetros y variables para crear sus propios scripts por lotes, ejecutando una serie de tareas.
4. Obtener ayuda
PowerShell tiene su propio cmdlet de solución de problemas de autoaprendizaje, Get-Help
que muestra todas las correcciones rápidas y los artículos de ayuda en una sola ventana. Ingrese el comando al final de cualquier salida para obtener ayuda con varios módulos. Es posible que deba presionar Ypara permitir versiones actualizadas del contenido de ayuda.
Hay varias opciones de ayuda a través de Get-help
. Por ejemplo, si desea saber qué Get-process
hace y cuál es su sintaxis exacta, ingrese lo siguiente:
Get-Help Get-Process
5. Obtener proceso
Get-Process
es un comando esencial de PowerShell que tabula la lista completa de procesos en su dispositivo local o en una computadora remota.
Para obtener información más detallada del proceso, deberá especificar otros parámetros, como el ID del proceso (PID) o el nombre del proceso.
Hay muchos parámetros específicos que puede incluir al definir el proceso a encontrar:
- Enumere los procesos especificando el tamaño del archivo en MB
- Enumerar los procesos en función de la prioridad
- Buscar el propietario de un proceso
6. Obtener servicio
Su computadora con Windows tiene muchos programas y procesos en ejecución. Si bien puede verlos directamente en el Administrador de tareas, es más fácil ver una lista completa usando Get-service
, que puede convertir a HTML más tarde.
¿No recuerda el nombre exacto del servicio que requiere? Puede utilizar un símbolo de comodín (*) junto con las pocas letras que pueda recordar.
Get-service "xyz*"
Algunas banderas comunes que funcionan junto con Get-Service
incluyen -DisplayName
, -DependentServices
, -InputObject
y -RequiredServices
.
7. Módulo de instalación o secuencia de comandos de instalación
PowerShell es una de las opciones más seguras para instalar paquetes de software para Windows, como Microsoft Teams, McAfee Security, Bing Translator, los últimos juegos de Xbox, etc. Para obtener una lista completa de software compatible con PowerShell para todos los usuarios, ingrese:
Get-AppxPackage -AllUsers
Una mejor manera es buscar el paquete deseado en PowerShell Gallery , un recurso único para los paquetes de software más recientes. Una vez que lo encuentre, ingrese un comando, como Install-module
, Install-Script
o Install-Package
. A continuación se muestra la instalación del juego Buscaminas.
Install-Script -Name Minesweeper
Espere unos segundos o minutos para que el paquete se instale a través de su PowerShell. Estará disponible más adelante en Windows.
Otro comando útil es Find-package
, que busca un paquete de software en su computadora o en la Web.
8. mkdir, md, rmdir
mkdir
no es un comando nativo de PowerShell. Es, sin embargo, un alias ampliamente utilizado para new-item
crear directorios, ya que esta sintaxis es muy popular en DOS y Linux. Cuando lo usa mkdir
con un nombre de su elección, crea una carpeta vacía.
mkdir "name of your empty folder."
Haga que PowerShell apunte a su carpeta recién creada usando un cd
comando simple.
cd "name of the newly created folder."
La carpeta recién creada siempre se encuentra a lo largo de la ruta C:\Windows\System32
, pero podría usar cd
para apuntar a una carpeta diferente.
Puede sustituirlo mkdir
por md
para el mismo propósito que el anterior. Para eliminar cualquier contenido del directorio, use un rmdir
comando (eliminar directorio):
rmdir "name of the folder with empty content."
9. Nuevo artículo
A diferencia de alias como mkdir
y md
, New-item
es el cmdlet oficial que se usa en PowerShell para crear nuevos elementos y establecer sus valores. Además de crear archivos y carpetas, puede usarlo para crear entradas y claves de registro.
- Para crear un nuevo directorio usando el
New-item
comando, escriba:
New-item -Path "Directory path location\"-Name "Name of your choice"-Item Type "directory"
- Tan pronto como se crea un directorio, puede colocar nuevos archivos
New-item
dentro de esa carpeta.
New-item -path "Created directory path location\"-Name "File name.txt"-ItemType "file"-Value "insert any text of your choice."
- El archivo recién creado se puede encontrar en su carpeta de destino.
10. Quitar artículo
¿Desea eliminar todos los archivos con una extensión, como. TXT,. DOC,. PDF,. WMV, desde una carpeta? Primero, señale la ruta de la carpeta exacta usando cd
, luego use el cmdlet Remove-Item
como se muestra a continuación:
Remove-Item * -Include *(filetype) - Exclude *(any variable or number)"
El método anterior es muy útil para identificar y eliminar cualquier archivo oculto o de solo lectura o eliminar cualquier archivo con caracteres especiales.
11. Establecer política de ejecución
Por motivos de seguridad, PowerShell tiene su propia política de ejecución que afecta a los archivos de configuración, scripts y otros parámetros. Esta función de seguridad se puede ejecutar mediante el Set-executionPolicy
comando, junto con una marca, como -force
, que sobrescribe los elementos existentes. Sigue la sintaxis dada a continuación.
Set-ExecutionPolicy<br>[-ExecutionPolicy]<br>[[-Scope] ]<br>[-Force]<br>[-WhatIf]<br>[-Confirm]<br>[]
Por ejemplo, usar el Set-ExecutionPolicy
comando para instalar el software Chocolatey se parece al código que se muestra a continuación. Una vez ejecutado, descargará e instalará el software oficial de Chocolatey en su computadora.
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
12. Seleccionar-Objeto y Ordenar-Objeto
Si su carpeta o subcarpeta tiene muchos archivos y extensiones, es posible que desee ordenarlos o seleccionarlos en orden ascendente o descendente según una propiedad predefinida. Aquí es donde los cmdlets Sort-Object
pueden Select-Object
ayudarlo a reorganizar varios objetos de una sola vez.
La clasificación y la selección se pueden aplicar a cualquier archivo en diferentes carpetas, así como a los procesos existentes en su computadora. A continuación se muestra un ejemplo de clasificación y selección de los diez procesos más importantes según el tamaño del conjunto de trabajo (WS) en megabytes.
Get-process | Sort-Object -Property WS | Select-Object - Last "Number of items"
Puede usar la clasificación y la selección en varios otros parámetros, como información histórica de varios archivos, clasificar todos los elementos de la lista contenidos dentro de un archivo de Bloc de notas y clasificar varios eventos en su computadora.
13. Proceso de inicio y parada
Ya sea que desee iniciar un nuevo proceso en Windows o detener un proceso existente, puede usar rápidamente los cmdlets de PowerShell para lograr ese objetivo.
Para terminar rápidamente un proceso, use el Stop-Process
cmdlet. El siguiente ejemplo muestra cómo cerrar un proceso para WordPad.
Stop-process -Name "Process or Application name"
Del mismo modo, para iniciar una nueva aplicación directamente desde la ventana de PowerShell, ingrese el Start-process
cmdlet y -FilePath
la marca.
Start-Process -FilePath "Application name"
14. Suspender y reanudar el servicio
En lugar de iniciar o detener un servicio en ejecución, puede suspenderlo directamente. El Suspend-service
cmdlet es fácil de usar y lo ayuda a reducir el uso de RAM y CPU de los servicios que no está usando actualmente.
Suspend-service -DisplayName "Service full name"
Cualquier servicio terminado se puede reanudar más tarde con un simple Resume-service
comando. Si no está seguro de qué servicios puede suspender sin afectar negativamente su sistema, use el siguiente comando:
Get-Service | Where-Object {$_.CanPauseAndContinue -eq "True"} | Suspend-Service -Confirm
15. Ruta de prueba
Si desea evitar cometer errores de ruta de archivo en su programación, debe asegurarse de que la ruta de archivo en la sintaxis sea precisa. Si bien siempre puede verificar con el Explorador de archivos, una forma más precisa de confirmar esto es usando el Test-path
cmdlet, que simplemente responde «Verdadero» o «Falso» si existe una ruta determinada.
Test-Path -Path "Path name"
Puede modificar el comando para probar la disponibilidad de un archivo determinado, verificar si la ruta del registro es precisa y determinar si hay otros archivos además de un tipo de archivo específico en su computadora.
16. Proceso de espera
Cuando varios procesos se ejecutan en tándem, es posible que desee esperar a que uno o más de ellos se detengan antes de poder volver a utilizarlos. El Wait-Process
cmdlet puede ayudar mucho. Puede especificar un tiempo de espera durante el cual PowerShell esperará antes de que se detenga el proceso.
Wait-Process -Name "Process name, -Timeout (in seconds)
Otros comandos esenciales de PowerShell
Además de los comandos de PowerShell enumerados anteriormente, también es útil aprender los siguientes cmdlets y funciones:
-
Echo
es un cmdlet que se usa para imprimir cualquier valor en la consola de PowerShell -
Get-Host
brinda detalles completos del programa que aloja PowerShell en Windows -
Test-JSON
es un cmdlet avanzado que se usa para probar si una cadena es un objeto JSO válido -
Trace-command
rastrea toda la expresión o el comando para encontrar los parámetros y las banderas que contiene -
Write-output
, como sugiere el nombre, da una salida del último comando en la ventana de la consola.
Preguntas frecuentes
¿Cómo puedo resolver el error «PowerShell script no reconocido como el nombre de un cmdlet»?
Si PowerShell no reconoce el nombre de un cmdlet, puede deberse a que la variable Path no se configuró correctamente. Solucione cualquier error de variable de ruta corrigiendo su ruta de carpeta no válida.
¿Cómo capturo la salida de error como una variable en PowerShell?
PowerShell tiene un parámetro de variable de error, $ErrorVariable
que está diseñado para capturar todas las salidas de error cuando ingresa los diversos cmdlets. Estos se pueden utilizar para la solución de problemas.
Crédito de la imagen: DepositPhotos . Todas las capturas de pantalla por Sayak Boral .
- Pío
Deja una respuesta