Thank you for your feedback.
I added lines at the end script but without success :
foreach($vmlist in (Get-Content -Path C:\VMware\listvm.txt)){
$vm = Get-VM -Name $vmlist
$datastore = "[datastore]"
$isopath = "Vmware tools/linux.iso"
$Fullpath = "$datastore $isopath"
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$dev1 = New-Object VMware.Vim.VirtualDeviceConfigSpec
$dev1.Operation = [VMware.Vim.VirtualDeviceConfigSpecOperation]::add
$cd = New-Object VMware.Vim.VirtualCdrom
$cd.Key = -1
$cd.ControllerKey = -2
$cd.Backing = New-Object VMware.Vim.VirtualCdromRemotePassthroughBackingInfo
$cd.Backing.DeviceName = 'pcc-007349\Vmware tools\linux.iso'
$dev1.Device = $cd
$spec.DeviceChange += $dev1
$dev2 = New-Object VMware.Vim.VirtualDeviceConfigSpec
$dev2.Operation = [VMware.Vim.VirtualDeviceConfigSpecOperation]::add
$ctrl = New-Object VMware.Vim.VirtualAHCIController
$ctrl.Key = -2
$dev2.Device = $ctrl
$spec.DeviceChange += $dev2
$vm.ExtensionData.ReconfigVM($spec)
Get-VM -Name $vm |
ForEach-Object -Process {
try
{
$cd = Get-CDDrive -VM $_ -ErrorAction Stop
}
catch
{
$cd = New-CDDrive -VM $_ -Confirm:$false -StartConnected:$true
}
Set-CDDrive -CD $cd -IsoPath "[datastore] Vmware tools\linux.iso" -Confirm:$false
}
}
