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 לרוב מציעים תפקוד חזק בלי צורך בספריות נוספות.