如何从脚本中关闭其他 PowerShell windows
How to close other PowerShell windows from script
我有一个包含以下步骤的 PowerShell 脚本:
- 打开另一个 PowerShell window
- 导航到 angular 项目目录
- 运行命令为项目提供服务
有没有一种方法可以关闭所有其他 运行 PowerShell windows,但保持当前 运行 脚本和新创建的 window 打开?更改后,我希望它表现得像这样:
- 关闭所有其他 PowerShell windows
- 打开另一个 PowerShell window
- 导航到 angular 项目目录
- 运行命令为项目提供服务
Is there a way that I can close all other running PowerShell windows,
but keep the currently running script and it's newly created window
open?
$Previous = Get-process -Name *Powershell*;
{YOUR SCRIPT}
Stop-process $previous
您可以使用 Get-Process
枚举所有 运行 powershell 进程,然后通过与 $PID
的值进行比较来过滤掉当前进程,然后将其余进程传送到 [=14] =]:
Get-Process powershell |? Id -ne $PID |Stop-Process -Force
如有必要,您可以通过 ID 包含子进程:
$childProcess = Start-Process powershell $childProcArgs -PassThru
Get-Process powershell |? Id -notin @($PID;$childProcess.Id) |Stop-Process -Force
...尽管我建议先杀死所有其他 powershell 实例 ,然后在
之后启动子进程
我有一个包含以下步骤的 PowerShell 脚本:
- 打开另一个 PowerShell window
- 导航到 angular 项目目录
- 运行命令为项目提供服务
有没有一种方法可以关闭所有其他 运行 PowerShell windows,但保持当前 运行 脚本和新创建的 window 打开?更改后,我希望它表现得像这样:
- 关闭所有其他 PowerShell windows
- 打开另一个 PowerShell window
- 导航到 angular 项目目录
- 运行命令为项目提供服务
Is there a way that I can close all other running PowerShell windows, but keep the currently running script and it's newly created window open?
$Previous = Get-process -Name *Powershell*;
{YOUR SCRIPT}
Stop-process $previous
您可以使用 Get-Process
枚举所有 运行 powershell 进程,然后通过与 $PID
的值进行比较来过滤掉当前进程,然后将其余进程传送到 [=14] =]:
Get-Process powershell |? Id -ne $PID |Stop-Process -Force
如有必要,您可以通过 ID 包含子进程:
$childProcess = Start-Process powershell $childProcArgs -PassThru
Get-Process powershell |? Id -notin @($PID;$childProcess.Id) |Stop-Process -Force
...尽管我建议先杀死所有其他 powershell 实例 ,然后在
之后启动子进程