PS C:\Users\rrkurtz> function get-ID {
>> param ([string]$title, [int]$arraycnt, [int]$arrayndx)
>> $id = " " + $title + " "
>> If ($arraycnt -eq 1) {} else {$id = $id + [string]$arrayndx + " "}
>> $id }
>> function get-title { param ([string]$id, $nrhashes = 51)
>> $hashes = ([int]($nrhashes - $id.length)/2)
>> For ($j=0; $j -lt $hashes; $j++){$hashstr += "#" }
>> $title = $hashstr + $id + $hashstr
>> If ($title.length -le $nrhashes) {$title += "#"}
>> $title }
>>
PS C:\Users\rrkurtz> $linelen = 130
PS C:\Users\rrkurtz> $nrhashes = 51
PS C:\Users\rrkurtz> $NrSterne = $linelen - $nrhashes
PS C:\Users\rrkurtz> $sterne = ""
PS C:\Users\rrkurtz> For ($i=1; $i -le $nrsterne; $i++) {$sterne += "*"}
PS C:\Users\rrkurtz> $obj = New-Object PSObject
PS C:\Users\rrkurtz>
PS C:\Users\rrkurtz> $ARR = @(GET-COMPUTERRESTOREPOINT | Sort -descending CreationTime)
PS C:\Users\rrkurtz> $cnt = $arr.count
PS C:\Users\rrkurtz> for ($i=1; $i -le $cnt; $i++) {
>> $d = $arr[$i -1]
>> $id = get-id "RESTORE POINT" $cnt $i
>> $obj | add-member -membertype noteproperty -name ( Get-title $Id ) -value $sterne
>> $obj | add-member -membertype noteproperty -name ($ID + "Creation Time") -value($d.converttodatetime($d.creationtim
e))
>> $obj | add-member -membertype noteproperty -name ($ID + "Descripton") -value($d.description)
>> $obj | add-member -membertype noteproperty -name ($ID + "Event Type") -value($d.EventType)
>> $obj | add-member -membertype noteproperty -name ($ID + "Restore Point Type") -value($d.RestorePointType)
>> $obj | add-member -membertype noteproperty -name ($ID + "Sequence Number") -value($d.sequencenumber)
>> }
>>
PS C:\Users\rrkurtz>
$obj > $env:\userprofile\desktop\restorepoints.txt
Cannot process argument because the value of argument "path" is invalid. Change the value of the "path" argument and run the operation again.
At line:1 char:13
+ $obj > $env: <<<< \userprofile\desktop\restorepoints.txt
+ CategoryInfo : InvalidArgument: (:) [], PSArgumentException
+ FullyQualifiedErrorId : Argument