使用 CMD 运行多个命令并启动 PowerShell.exe

使用 CMD 运行多个命令并启动 PowerShell.exe

我正在尝试更新我的 .bat 脚本,通过在记事本中输入每台机器的名称来重新启动多台机器上的服务。为此,我尝试从 cmd 运行 powershell 脚本,但无法使其工作。我读到使用“;”可以在一行中编写脚本,但对我来说不起作用。

我正在尝试输入这个 powershell 代码:

$FicheroEquipos = Get-Content -Path 'C:\Users\Cloudpg\Desktop\Morralla\test\equipos.txt'
ForEach ($Variable in $FicheroEquipos){
Get-Service -Name $Variable | Restart-Service -Verbose
}

就像我的.bat 中一样

start powershell.exe "$FicheroEquipos = Get-Content -Path 'C:\Users\Cloudpg\Desktop\Morralla\test\equipos.txt';ForEach ($Variable in $FicheroEquipos){Get-Service -Name $Variable | Restart-Service -Verbose}"

如果有人知道如何实现我的目标,我将不胜感激。非常感谢。(对于我所输入的代码,变量用于服务,因为我目前无法在多台计算机上进行测试。)

答案1

尝试这个:

powershell.exe -command "$FicheroEquipos = Get-Content -Path 'C:\Users\Cloudpg\Desktop\Morralla\test\equipos.txt';
ForEach ($Variable in $FicheroEquipos){Get-Service -Name $Variable | Restart-Service -Verbose}"

相关内容