PS> $out = (qwinsta)
PS> $len = ($out | select -First 1 | ? { $_ -match '.*(ID)' } | % { $matches[0].Length })
PS> $out | select -skip 1 | % { $_.Substring(0, $len) } | ? { $_ -match '(\d+)$' } | % { $matches[1] }
0
2
65537
$wsh = New-Object -ComObject WScript.Shell
$lnk = $wsh.CreateShortcut("some.lnk");
$lnk.TargetPath = "hoho";
$lnk.Save();