A PowerShell egy sokoldalú scriptelési nyelv, amely lehetővé teszi felhasználói számára, hogy automatizálják a Windows operációs rendszer és az azt futtató alkalmazások adminisztrációs feladatait. Az Export-CSV parancsmag (cmdlet) az egyik ilyen eszköz, amely lehetővé teszi objektumok exportálását CSV (Comma-Separated Values – vesszővel elválasztott értékek) formátumban.
Mi az Export-CSV cmdlet?
Az Export-CSV cmdlet egy kraftfull és jól használható parancsmag, ami lehetőséget ad arra, hogy PowerShell objektumokat egyszerűen exportálhassunk CSV fájlba. Számos paraméter beállításával testreszabható, hogy pontosan milyen adatok kerüljenek exportálásra és milyen formában.
Hogyan működik?
Az Export-CSV cmdlet az előtte lévő parancsmagokból kapott objektumokat csv formátumra alakítja. Alapvetően minden objektum egy sorban helyezkedik el a CSV fájlban, a properties (tulajdonságok) pedig oszlopokat képeznek. Például, ha egy listát exportálsz felhasználókról, egy sor fog megfelelni egy felhasználónak, és minden felhasználó tulajdonsága (mint pl. név, email cím, stb.) egy-egy oszlopban lesz tárolva.
Mik a leggyakrabban használt paraméterei?
- -Path: Az elérési útvonal, ahová a CSV fájlt menteni szeretnénk. Ez a paraméter kötelező.
- -NoTypeInformation: Alapértelmezés szerint az Export-CSV egy első sorban típusinformációt is beleír a fájlba. Ha ezt nem szeretnéd, használhatod ezt a paramétert, ami kihagyja ezt az információt.
- -Append: Ezzel a paraméterrel hozzáadhatjuk az új adatot egy már létező CSV fájlhoz.
- -Delimiter: Ezzel a paraméterrel megváltoztatható az alapértelmezett vessző elválasztó karakter.
Példák
Alapvető használat:
Get-Process | Select-Object Name, ID | Export-CSV -Path "processes.csv" -NoTypeInformation
Ez a parancslista első lépésben lekéri a futó folyamatokat, második lépésben kiválasztja azok nevét és azonosítóját, majd exportálja a processes.csv fájlba anélkül, hogy típusinformációt tartalmazna.
Adat hozzáadása meglévő CSV-hez:
Get-Service | Select-Object Status, Name, DisplayName | Export-CSV -Path "services.csv" -Append -NoTypeInformation
Ez a parancs kiírja a szolgáltatások állapotát, nevét és megjelenítendő nevét egy már létező services.csv fájlba, amihez hozzáadja az új adatokat.
Exportálás többféle elválasztóval
Az -Delimiter paraméter segítségével megváltoztatható a CSV fájl elválasztó karaktere. Ez hasznos lehet, ha az adatokat egy olyan alkalmazásba szeretnéd importálni, ami más elválasztót vár.
Példa pontosvessző használatára elválasztóként:
Get-Process | Export-CSV -Path "processes.csv" -Delimiter ';' -NoTypeInformation
Az Export-CSV cmdlet erőteljes eszköz a PowerShellben, amely rendkívül hasznos lehet az informatikai szakemberek széles körének. Lehetővé teszi adatok egyszerű exportálását és megosztását CSV formátumban, ami kompatibilis a legtöbb táblázatkezelő és adatbázis-kezelő rendszerrel. A fent bemutatott paraméterek és példák csak a felszínét kapargatják annak, amit az Export-CSV képes nyújtani, ezért érdemes további lehetőségeket is felfedezni a PowerShell dokumentációjában.