PowerShell:
עובדים עם CSV
איך לעשות:
קריאה מקובץ CSV
כדי לקרוא מקובץ CSV, יש להשתמש ב-cmdlet Import-Csv
. Cmdlet זה קורא את הקובץ וממיר אותו לאובייקטים מותאמים אישית של PowerShell עבור כל שורה.
# ייבוא קובץ CSV
$data = Import-Csv -Path "C:\Data\users.csv"
# הצגת התוכן
$data
דוגמא לפלט:
Name Age City
---- --- ----
John 23 New York
Doe 29 Los Angeles
כתיבה לקובץ CSV
לחלופין, כדי לכתוב נתונים לתוך קובץ CSV, משתמשים ב-cmdlet Export-Csv
. Cmdlet זה לוקח אובייקטים קלטים וממיר אותם לפורמט CSV.
# יצירת אובייקט לייצוא
$users = @(
[PSCustomObject]@{Name='John'; Age='23'; City='New York'},
[PSCustomObject]@{Name='Doe'; Age='29'; City='Los Angeles'}
)
# ייצוא לקובץ CSV
$users | Export-Csv -Path "C:\Data\new_users.csv" -NoTypeInformation
לאחר הביצוע, נוצר קובץ בשם new_users.csv
עם הנתונים שסופקו.
סינון ושינוי תוכן CSV
כדי לסנן או לשנות את הנתונים מקובץ CSV, יש להשתמש ביכולות הניהול של אובייקטים ב-PowerShell. לדוגמה, כדי לבחור רק משתמשים מעל גיל מסוים ומעיר מסוימת:
# ייבוא וסינון נתונים
$filteredData = Import-Csv -Path "C:\Data\users.csv" | Where-Object {
$_.Age -gt 25 -and $_.City -eq 'Los Angeles'
}
# הצגת הנתונים המסוננים
$filteredData
דוגמא לפלט:
Name Age City
---- --- ----
Doe 29 Los Angeles
שימוש בספריות צד שלישי
אף על פי ש-cmdlets המובנים של PowerShell לרוב מספיקים למשימות נפוצות, פעולות מורכבות יותר עשויות להרוויח מספריות או כלים של צד שלישי. עם זאת, למטרות טיפול סטנדרטי בקובצי CSV, כמו קריאה, כתיבה, סינון, או מיון, cmdlets המובנים של PowerShell כמו Import-Csv
ו-Export-Csv
לרוב מציעים תפקוד חזק בלי צורך בספריות נוספות.