scripts - script powershell ejemplos
¿Cómo hago para que Powershell ejecute un archivo por lotes y luego permanezca abierto? (3)
Por ejemplo; con el antiguo símbolo del sistema sería:
cmd.exe /k mybatchfile.bat
Coloque en una instancia de cmd (o de hecho PowerShell sí mismo) y escriba esto:
powershell -?
Verá que powershell.exe tiene un parámetro "-noexit" que le dice que no salga después de ejecutar un "comando de inicio".
Estoy seguro de que ya lo resuelves, pero simplemente lo publico
$CreateDate = (Get-Date -format ''yyyy-MM-dd hh-mm-ss'')
$RemoteServerName ="server name"
$process = [WMICLASS]"//$RemoteServerName/ROOT/CIMV2:win32_process"
$result = $process.Create("C:/path to a script/test.bat")
$result | out-file -file "C:/some path /Log-$CreatedDate.txt"
Al ejecutar PowerShell.exe, simplemente proporcione el modificador -NoExit de la siguiente manera:
PowerShell -NoExit -File "C:/SomeFolder/SomePowerShellScript.ps1"
PowerShell -NoExit -Command "Write-Host ''This window will stay open.''"
O si desea ejecutar un archivo y luego ejecutar un comando y tener la ventana abierta, puede hacer algo como esto:
PowerShell -NoExit "& ''C:/SomeFolder/SomePowerShellScript.ps1''; Write-Host ''This window will stay open.''"
El parámetro -Command está implícito si no se proporciona, y aquí usamos & para llamar al script de PowerShell, y ; separa los comandos de PowerShell.
Además, en la parte inferior de la publicación de mi blog , muestro un rápido cambio de registro que puede hacer para que PowerShell permanezca siempre abierto después de ejecutar un script / comando, para que no tenga que proporcionar explícitamente siempre el hora.