ciao, tempo fa avevo chiesto aiuto per la creazione di un semplice script e questo è quello che mi avevate consigliato:
Get-ChildItem "r:\" | Where-Object { $_.PSIsContainer} | ForEach-Object {Get-ChildItem $_ | Where-Object {$_.PSIsContainer} | Sort-Object -Descending | Select-Object -Skip 3 | Remove-Item -Recurse -WhatIf}
io ho dovuto aggiungere prima dello script il comando cd r:\ altrimneti recevevo questo errore:
Get-ChildItem : Impossibile trovare il percorso 'C:\Users\administartor\Giove (Develope Onda)' perché non esiste.
In riga:1 car:87
+ Get-ChildItem "r:\" | Where-Object { $_.PSIsContainer} | ForEach-Object {Get-ChildItem <<<< $_ | Where-Object {$_.PS
IsContainer} | Sort-Object -Descending | Select-Object -Skip 3 | Remove-Item -Recurse -WhatIf}
+ CategoryInfo : ObjectNotFound: (C:\Users\admind...(Develope Onda):String) [Get-ChildItem], ItemNotFound
Exception
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
questo è dovuto al fatto che il comando Get-ChildItem "r:\"| Where-Object { $_.PSIsContainer} restituiesce il valore :
Directory: R:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 20/05/2010 17.53 Giove (Develope Onda)
anziche r:\Giove (Develope Onda).
...spero di essermi spiegato :)
è possibile forzare il comando per restituire il percorso completo (full path) ???
grazie.