Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Создание собственного массива объектов powershell 2.0 (http://forum.oszone.net/showthread.php?t=301891)

dosperados 01-07-2015 07:30 2524490

Создание собственного массива объектов powershell 2.0
 
Есть вот такой код
Код:

get-childitem -Path $path -Include $IncludeMask -Recurse | % { # Получаем содержимое $path по маске(фильтру) $IncludeMask
        IF ($_.LastWriteTime.Day -eq 1)  { # ищем файлы созданные первого числа
                IF ((Test-Path -Path $DestMounth\$($_.Name)) -eq $False) { #  проверяем скопирован ли архив
                Write-Verbose "КОПИРУЮ: Новый бекап`t $_.FullName "
                Copy-Item -Path $_.FullName -Destination $DestMounth -Force -WhatIf
                #$htmlCodeDay += '<TR ALIGN=left><TD>'+$_.FullName+'</TD>'+'<TD>'+$_.LastWriteTime+'</TD></TR>'
                $htmlCodeDay +=        @([pscustomobject]@{'FileName'=($_.Name);
                        'FullName'=($_.FullName);
                        'Size(GB)'=($_.Length / 1GB -as [int]);
                        'Size(MB)'=($_.Length / 1MB -as [int]);
                        'CreationTime'=($_.CreationTime);
                        'LastWriteTime'=($_.LastWriteTime)})
                        }
                }
}

интересуют как можно переделать этот блок, чтобы он работал на Posh 2.0
Код:

$htmlCodeDay +=        @([pscustomobject]@{'FileName'=($_.Name);
                        'FullName'=($_.FullName);
                        'Size(GB)'=($_.Length / 1GB -as [int]);
                        'Size(MB)'=($_.Length / 1MB -as [int]);
                        'CreationTime'=($_.CreationTime);
                        'LastWriteTime'=($_.LastWriteTime)})

в дальнейшем значения сохраненные в переменную $htmlCodeDay я конвертирую в HTML

Код:

$htmlcode += $htmlCodeDay | ConvertTo-HTML -Fragment -PreContent "<h2>Копирование новых бекапов $DestBackUp :</h2>"

Foreigner 01-07-2015 10:39 2524535

dosperados, Как пример:
Код:

$files = gci *.txt
$result = @()
foreach ($file in $files) {

    $result += new-object -type psobject -property @{
   
        'FullName' = $file.FullName
        'Size(GB)' = $file.Length / 1GB
        'Size(MB)' = $file.Length / 1MB
        'CreationTime' = $file.CreationTime
        'LastWriteTime' = $file.LastWriteTime
   
}}

$result | ConvertTo-HTML -Fragment -PreContent "<h2>Копирование новых бекапов:</h2>"


dosperados 01-07-2015 11:25 2524551

Решил задачу самостоятельно

Код:

        $htmlCodeDay += New-Object PSObject -Property @{
    'FullName'=($_.FullName)
        'Size(GB)'=($_.Length / 1GB -as [int])
        'Size(MB)'=($_.Length / 1MB -as [int])
        'CreationTime'=($_.CreationTime)
        'LastWriteTime'=($_.LastWriteTime)}



Время: 23:16.

Время: 23:16.
© OSzone.net 2001-