
$PSVersionTable מציג את גרסת ה-PowerShell הנוכחית ואם יש בה תמיכה במיפוי הדינמי.FilterHashtable, בדיוק כמו שכותבים שדה קבוע כגון LogName או Id.הטקסט המלא של הדקות הראשונות בהרצאה «פקודת Get-WinEvent עם סינון דינמי ב-Powershell 7» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם. בהרצאה הזו אני רוצה להראות לכם יכולת נפלאה שהוסיפו ב-PowerShell שש כדי לשלוף את השדות האלו שעשינו אותם דרך XML, את השדות הלא קבועים של Event.
במקום כל הבלאגן הזה, PowerShell שש יודע לשלוף לבד באופן דינמי את השדות המתחלפים בכל אירוע. בואו אני אראה לכם איך עושים את זה, אבל קודם כל צריך להתקין PowerShell שש.
אנחנו הולכים לגוגל, כותבים PowerShell Latest Version Install, התקנה של גרסה אחרונה, לוחצים Install PowerShell on Windows. אני מוריד את ה-MSI, את קובץ ההתקנה ואני צריך פה X64.
אני מוריד אותו, לוקח את הקובץ, עושה עליו Copy, מעתיק אותו לתוך המכונה. במקרה הזה זאת מכונה בענן שאיתה אנחנו מתרגלים. אני עושה Right Click, Paste, מעתיק את ההתקנה של PowerShell שבע נקודה ארבע.
כל מה שאחרי PowerShell שש יודע לעשות את היכולת מיפוי הדינמית ואז אני יכול לפנות לשדה Destination IP, שאין אותו בכל אירוע, ישר בתוך הפילטר כאן למעלה. אני לא צריך להוציא את האיבנטים ידנית, להחליף אותם ל-XML, לעשות להם Parsing ואז לשלוף את העמודה.
כל זה PowerShell שש ומעלה יודע לעשות אוטומט. אני פה בתוך הפילטר יכול ישירות לרשום את ה-Destination IP. תכף נראה את זה וזה יקל לנו בעבודה.
בואו נבדוק איזה PowerShell יש לי כרגע. כרגע ב-Windows מותקן לי PowerShell חמש אחד נראה לי. בואו נבדוק את זה. אני כותב דולר, משתנה, PS Version Table.
המשתנה הזה מכיל את הגרסה הנוכחית של PowerShell ואכן אנחנו רואים שכרגע PowerShell הוא בגרסה חמש אחד ואין לו את היכולת של המיפוי הדינמי. אז אני סוגר אותו ומתקין PowerShell שבע.
אני עושה דבל קליק ועל הכול Next, Next, Next. לא משנה שום הגדרה, ברירת מחדל מתאימה לי. ככה זה נראה. Next, Next.
מי שרוצה יכול לשים פה כמה ויים שיהיה לו יותר נוח לעבוד. אני כרגע לא נוגע בכלום. עושה על הכול Next, Next, Next ובסוף Install.
לאחר ההתקנה אנחנו יכולים להריץ ישירות את ה-PowerShell או לעשות Finish. אם אנחנו עושים Finish וכותבים PowerShell בהתחל אנחנו רואים שיש לנו את ה-PowerShell חמש אחד המובנה ב-Windows ו-PowerShell שבע.
דרך אגב, ב-Windows 11 גם PowerShell חמש אחד זה שמובנה. PowerShell שש ושבע צריך להתקין. אם אני אפעיל את ה-PowerShell שבע אני אוכל ישירות להריץ פקודה שכוללת את השדה שממופה דינמית כאילו הוא שדה מובנה.
אתם רואים? כמו שיש Log Name ו-ID שזה שדות הקבועים בכל Event, אני יכול בגרסה הם גם לכתוב שדה שהוא דינמי, מה שלא היה לפני כן. ואתם יכולים לראות שהפקודה הזאת עובדת והיא