PowerShell - [решено] Создание собственного массива объектов powershell 2.0

Ответить
Аватара пользователя
dosperados

PowerShell - [решено] Создание собственного массива объектов powershell 2.0

Сообщение dosperados »

Есть вот такой код



Код:

Код: Выделить всё

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 += ''+$_.FullName+''+''+$_.LastWriteTime+''
		$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 "Копирование новых бекапов $DestBackUp :"
Аватара пользователя
Foreigner

Re: PowerShell - [решено] Создание собственного массива объектов powershell 2.0

Сообщение Foreigner »

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 "Копирование новых бекапов:"
Аватара пользователя
dosperados

Re: PowerShell - [решено] Создание собственного массива объектов powershell 2.0

Сообщение dosperados »

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





Код:

Код: Выделить всё

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

Вернуться в «Скриптовые языки администрирования Windows»