ATTENTION avec Vtom : la queue_ps1 doit contenir :
%PATH_POWERSHELL%\powershell.exe -ExecutionPolicy UnRestricted -NonInteractive -File %TOM_SCRIPT% %arg%
Tests fait sur VWJES_TST et PRD.
Lancer Windows Power Shell en administrateur
PowerShell Set-ExecutionPolicy UnRestricted L:\Soft\VMware\Scripts\Initialize-PowerCLIEnvironment.ps1 Connect-VIServer -Server wctsrv0001.wabtec.com -Protocol https -User ad.wabtec.com\srvWCTVtom -Password 'Y------#' Get-PowerCLIConfiguration Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false Get-Vm vsch1 Start-Vm vsch1 Stop-Vm vsch1
—– Autres commandes
Get-Help Set-ExecutionPolicy
PowerShell Set-ExecutionPolicy AllSigned
—- script —
//WCTSRV0016/Batch_win/vtom_VM_power.ps1
P1 : nom_du_serveur
P2 : start ou stop
Param(
[string]$w_vm = $Args[0],
[string]$w_action = $Args[1]
)
Write-Host "La VM est : $w_vm"
Write-Host "Action : $w_action"
PowerShell Set-ExecutionPolicy UnRestricted
L:\Soft\VMware\Scripts\Initialize-PowerCLIEnvironment.ps1 -w_vm -w_action
Connect-VIServer -Server wctsrv0001.wabtec.com -Protocol https -User ad.wabtec.com\srvWCTVtom -Password 'YN6$P&G6j#'
$WarningPreference = 'SilentlyContinue'
$Error.Clear()
Get-VM "$w_vm" |select Name, PowerState
if ( $w_action -like "stop" ) {
Stop-VM -VM "$w_vm" -Confirm:$false
$statu = Get-VM "$w_vm" |select PowerState
if ( $statu -like "@{PowerState=PoweredOff}" ) {
Write-Host "Power : OFF"
exit 0
} else {
Write-Host "Power : ON"
exit 1
}
} else {
Start-VM -VM "$w_vm" -Confirm:$false
$statu = Get-VM "$w_vm" |select PowerState
if ( $statu -like "@{PowerState=PoweredOn}" ) {
Write-Host "Power : ON"
exit 0
} else {
Write-Host "Power : OFF"
exit 1
}
}