【发布时间】:2015-04-23 16:28:29
【问题描述】:
我正在尝试编写一个脚本来重新启动一系列 IP 地址中的 Mac。通过 PowerShell 执行此操作是可行的,但该过程会等到每台机器重新启动后才会移动到下一台机器。我发现ssh'ing 进入每台机器并使用sudo shutdown -S shutdown -r now 重新启动它更快......它只是手动的。以下是我目前在 PowerShell 中的内容:
$serverRoot = "xxx.xxx.xxx."
$startVal = 100
$stopVal = 150
for ($i=$startVal; $i -le $stopVal; $i++)
{
$User="username"
$Password="password"
$SecurePass=ConvertTo-SecureString -string $Password -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential $User, $SecurePass
$session = New-SSHSession -ComputerName ($serverRoot + $i) -Credential $Credential -AcceptKey
Invoke-SSHCommand -SSHSession $session -Command "echo $Password | sudo -S shutdown -r now"
Remove-SSHSession -SSHSession $session -Verbose
}
有什么我可以添加的,它会立即在所有机器上启动重新启动过程吗?我应该使用 AppleScript 吗?
【问题讨论】:
标签: macos powershell applescript powershell-core