IMHO jednym z najważniejszych rozszerzeń, bo przydatnych w codziennej pracy, jakie pojawiły się w PowerShell 5 jest możliwość kopiowania plików via winRM – coś aka SCP. SMB ma swoje wymagania i raczej nie otwiera się portów na zewnątrz dla tego protokołu. winRM pozwala szyfrowanym kanałem przesłać plik uzupełniając możliwości zdalnej administracji.
wymaganiem jest oczywiście, aby po obu stronach był PS5 [WMF5], czyli niestety, jeszcze przez kilka miesięcy raczej rozwiązanie laboratoryjne, ponieważ WMF5 jest cały czas jako production preview. instalowałem testowo na w2k12R2 i w2k8R2 – i na tym drugim, niestety ze skutkiem śmiertelnym dla PS5 [bez paniki, nie debugowałem problemu, ale na pewno 'don’t do it on production’ jak mawiają rodzice].
plik kopiuje się podając sesję zdalną, a więc najpierw trzeba ją założyć. niestety nie jest obsługiwane kopiowane do wielu sesji na raz ):
$s=new-PSSession server01.wfiles.lab copy-item -path c:\temp\filetocopy.txt -toSession $s -destination c:\temp
obsługiwane jest również kopiowanie Z serwera przy pomocy 'fromSession’. kopiowane 'proxy’ czyli podając równocześnie 'do’ i 'z’ nie zadziała:
PS C:\Users\nexor> Copy-Item -FromSession $fromSession -Path c:\temp\* -ToSession $toSession -Destination c:\temp Copy-Item : '-FromSession' and '-ToSession' are mutually exclusive and cannot be specified at the same time. At line:1 char:1 + Copy-Item -FromSession $fromSession -Path c:\temp\* -ToSession $toSes ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (Microsoft.Power...namicParameters:CopyItemDynamicParameters) [Copy-Ite m], ArgumentException + FullyQualifiedErrorId : InvalidInput,Microsoft.PowerShell.Commands.CopyItemCommand
niewątpliwie funkcjonalność, dla której warto będzie na serwerach podnieść wersję WMF, jak już będzie wersja finalna.
eN.