ok got it working
incase anyone interested
get-content "c:\temp\vms.txt" | % { copy-item -path "c:\temp\diskpart.txt" -destination "\\$_\c$\temp" }
$scriptblock = {diskpart /s "c:\temp\diskpart.txt"}
foreach ($vm in (get-content "c:\temp\vms.txt")) {
invoke-command -computername $vm -scriptblock $scriptblock
}
diskpart.txt is
---------
rescan
select volume c
extend