Descoperiți cum să creați fișiere CSV clar dispuse cu ajutorul scripturilor PowerShell: utilizați Obiecte personalizate PowerShell combinate cu commandlet-ul Export-csv.

Introducerea obiectelor personalizate PowerShell

Obiectele personalizate sunt obiecte „generice” pe care le puteți crea singuri în PowerShell.

Un obiect personalizat vă permite să definiți diverse proprietăți care pot fi adăugate în mod dinamic la scripturile PowerShell. Un obiect personalizat poate avea proprietăți predefinite ca orice alt obiect sau le puteți adăuga dinamic în timpul execuției, atunci când este necesar.

Există multe moduri de a utiliza obiectele personalizate și de a le transforma în instrumente utile. Puteți fie:

  • să mențineți o „variabilă de stare” în fișierele jurnal sau
  • să transferați mai multe mesaje simultan către o funcție fără a utiliza prea multe variabile.

Generarea obiectelor personalizate PowerShell

Crearea unui obiect personalizat PowerShell se face cu commandlet-ul „New-Object”.

PowerShell

1
$object = New-.Object PSObject

În acest exemplu, am creat un obiect de tip „PSCustomObject”.

Pentru moment, obiectul inițial este gol și nu are alte caracteristici. Puteți adăuga noi caracteristici utilizând commandlet-ul „Add-Member”.

PowerShell

1
$object | Add-Member NoteProperty „Color” „Red”

Ca rezultat, obiectul are acum caracteristica „Color=roșu”. Puteți repeta acest lucru de câte ori doriți și puteți da obiectului diferite caracteristici:

PowerShell

1
$object | Add-Member NoteProperty „Size” 1

Exportul obiectelor personalizate ca CSV

Un beneficiu major este acela că puteți transfera întregul obiect către alte funcții sau commandlets:

PowerShell

1
$object Export-Csv -NoTypeInformation -Path .\log.csv -Delimiter ‘;’

Sau cu o funcție:

PowerShell

1
2
3
4
5

function my-export {
param($myInput)
$myInput Export-Csv -NoTypeInformation -Path .\log.csv -Delimiter ‘;’
} }
my-export $object

Aici am creat un fișier .csv care arată astfel:

Color Size
Red 1

Și, în consecință, textul apare astfel:

„Color”; „Size”
„Red”; „1″

De asemenea, puteți combina mai multe obiecte într-o listă sau într-un array pentru a le afișa în mod colectiv:

PowerShell

1
2
3
4
5
5
6

.

7
8
9
10
11
12
13

$list = @()
$object1 = New-Object PSObject
$object1 | Add-Member NoteProperty „Name” „Alice”
$object1 | Add-Member NoteProperty „Color” „Red”
$object1 | Add-Member NoteProperty „Size” 1
$list += $object1
$object2 = New-Object PSObject
$object2 | Add-Member NoteProperty „Name” „Bob”
$object2 | Add-Member NoteProperty „Color” „Blue”
$object2 | Add-Member NoteProperty „Size” 2
$list += $object2
$list | Export-Csv -NoTypeInformation -Path .\log.csv -Delimiter ‘;’

Ca rezultat, noul dvs. fișier .csv conține automat ambele obiecte:

.

Nume Culoare Dimensiuni
Alice Roșu 1
Bob Albastru 2

Corespunzător, textul apare ca:

„Nume”; „Culoare”; „Mărime”
„Alice”; „Roșu”; „1″
„Bob”; „Albastru”; „2″

În rezumat, obiectele personalizate PowerShell combinate cu commandlet-ul Export-csv sunt un instrument eficient și util pentru a exporta seturi de date în format .csv.

FirstAttribute AG – Partener de consultanță Microsoft pentru
Migrație și Active Directory

Consultanță AD | Migrație AD

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.