¿Qué es PWSH.EXE? Lista de sintaxis PWSH que puede usar

PowerShell es una de las herramientas de secuencias de comandos más potentes que ha creado Microsoft . En esta publicación, compartiremos qué es PWSH.exe y una lista de la sintaxis importante de PWSH(PWSH syntax) . Estoy seguro de que muchos usuarios han usado Windows PowerShell , pero PWSH ahora es una herramienta de secuencias de comandos multiplataforma que funciona en Windows , macOS y Linux . Sin embargo, no es compatible con WSL , es decir , el subsistema de Windows(Windows Subsystem) en Linux , e intentar configurar PWSH como shell de inicio de sesión provocará que WSL sea inestable .

¿Qué es PWSH.EXE?

PWSH

Antes de comenzar, aclaremos un detalle. PWSH.EXE es el nuevo nombre de PowerShell . Desde la versión 6 se llama PowerShell Core . Anteriormente se denominó powershell.exe , que debe haber visto instalado en Windows (versión 5.1). No es de extrañar que cada vez que inicie PowerShell en Windows , reciba un mensaje:

“Try the new cross-platform PowerShell https://aka.ms/pscore6.”

Puede leer sobre la diferencia entre PowerShell y PowerShell Core.(difference between PowerShell and PowerShell Core.)

Avance rápido hoy, PowerShell ha llegado a la versión 7,(PowerShell has reached version 7) que es un cambio importante en comparación con la versión 6 y usa .NET Core 3 en lugar de .Net Framework . Si quiere probarlo, aprenda a instalar PowerShell 7.0 en Windows 10.(how to install PowerShell 7.0 on Windows 10.)

Sintaxis importante de PWSH

-File | -f: si tiene comandos en un archivo de script, puede usarlo como entrada. También puede presentar argumentos para los archivos cuando corresponda.

pwsh -File .\test.ps1 -TestParam $env:windir

-Command | -c : Use esto para ejecutar un comando o ScriptBlock . ScriptBlock es un conjunto de funciones encerradas dentro de {}

pwsh -Command {Get-WinEvent -LogName security}

o

@'
"in"

"hi" |
% { "$_ there" }

"out"
'@ | powershell -NoProfile -Command -

-EncodedCommand | -e | -ec : use esto cuando sea necesario usar comillas complejas o llaves.

$command = 'dir "c:\program files" '
$bytes = [System.Text.Encoding]::Unicode.GetBytes($command)
$encodedCommand = [Convert]::ToBase64String($bytes)
pwsh -encodedcommand $encodedCommand

-Login | -l: en Linux y macOS, inicia PowerShell como shell de inicio de sesión, usando /bin/sh para ejecutar perfiles de inicio de sesión como /etc/profile y ~/.profile. No es aplicable a Windows .

Deberá verificar la ruta absoluta enumerada en /etc/shells. Puede usar la  utilidad chsh para configurar el shell de su usuario actual en pwsh.

chsh -s /usr/bin/pwsh

-Archivo de configuración | -ajustes

Si desea sobrescribir la configuración global con la configuración del proyecto local, puede especificar el archivo de configuración mediante esta opción. La configuración de todo el sistema está disponible en powershell.config.json.

pwsh -SettingsFile c:\myproject\powershell.config.json

Lista completa de sintaxis de PWSH

pwsh[.exe]
[[-File] <filePath> [args]]
[-Command { - | <script-block> [-args <arg-array>]
| <string> [<CommandParameters>] } ]
[-ConfigurationName <string>]
[-CustomPipeName <string>]
[-EncodedCommand <Base64EncodedCommand>]
[-ExecutionPolicy <ExecutionPolicy>]
[-InputFormat {Text | XML}]
[-Interactive]
[-Login]
[-MTA]
[-NoExit]
[-NoLogo]
[-NonInteractive]
[-NoProfile]
[-OutputFormat {Text | XML}]
[-SettingsFile <SettingsFilePath>]
[-STA]
[-Version]
[-WindowStyle <style>]
[-WorkingDirectory <directoryPath>]

pwsh[.exe] -h | -Help | -? | /?

Si necesita más detalles, puede visitar docs.microsoft.com.



About the author

Soy ingeniero telefónico con más de 10 años de experiencia en la industria móvil y me especializo en la reparación y actualización de teléfonos inteligentes. Mi trabajo ha incluido el desarrollo y mantenimiento del firmware del teléfono, el desarrollo de imágenes para dispositivos Apple y el trabajo en proyectos de Firefox OS. Con mis habilidades en desarrollo de software, ingeniería de hardware, procesamiento de imágenes y desarrollo de Firefox OS, tengo la capacidad de tomar problemas complejos y convertirlos en soluciones simples que funcionan en cualquier dispositivo.



Related posts