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

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

krasavchik0 20-02-2018 17:02 2799173

зафиксировать переменую.
 
Код:

$computers="PC14-Z97", "ADMIN"


Foreach  ($event1 in $computers)
{       

        if ( $event1 -eq 'ADMIN' )  {
                $events = Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName,    $event1          | export-csv C:\1.csv  -UseCulture -NoType  -Encoding UTF8
        } else  {
                $events = Invoke-command -computer $event1 {Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* }  | Select-Object DisplayName,    $event1  | export-csv C:\1.csv -UseCulture -NoType -Encoding UTF8
        }
}

Проблема в том, что я хочу получить столбец с названием ПК. Но название почему то выводится только 1 раз. Как сделать вывод не только столбца DisplayName, но и вывод $event1 ?

Kazun 20-02-2018 17:25 2799178

Код:

Foreach  ($event1 in $computers)
{       
        if ( $event1 -eq 'ADMIN' )  {
                $events = Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*
        } else  {
                $events = Invoke-command -computer $event1 {Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* }       
        }
        $events | Select-Object DisplayName,  @{n="ComputeName";e={$event1}} | export-csv C:\1.csv -UseCulture -NoType -Encoding UTF8 -Append
}


krasavchik0 20-02-2018 18:03 2799190

Kazun, Спасибо.
Но фаил теперь в цикле перезаписывается. Если добавляю параметр -Append то ругается
Цитата:

Export-Csv : Не удается найти параметр, соответствующий имени параметра "Append".
. Я так понимаю моя версия повершела не поддерживает этот параметр? хотя и кривые руки не исключаю.

Kazun 20-02-2018 19:07 2799207

Если версия старая:
Код:

$evt = @()
Foreach ($event1 in $computers)
{       
        if ( $event1 -eq 'ADMIN' )  {
                $events = Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*
        } else  {
                $events = Invoke-command -computer $event1 {Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* }       
        }
        if($events) {
                $evt += $events | Select-Object DisplayName,  @{n="ComputeName";e={$event1}}
        }
}

if($evt) {
        $evt  | export-csv C:\1.csv -UseCulture -NoType -Encoding UTF8
}



Время: 01:54.

Время: 01:54.
© OSzone.net 2001-