tag:blogger.com,1999:blog-84314897338180043462024-03-19T12:39:32.046+02:00LeiderTechאחד הדברים שאני הכי אוהב לעשות, זה למצוא פתרונות לכל הדברים שאנשים אומרים שאי אפשר לעשות בתחום הסלולאר, או בתחום המחשוב הפרטי,או העסקי.
יש לנו את האנציקלופדיה הגדולה ביותר והיא חינם ואפשר להשתמש בה מסביב לשעון בכל מקום, וכולם מכירים אותה...לא אני לא מדבר על ויקיפדיה - GoogleLev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.comBlogger87125tag:blogger.com,1999:blog-8431489733818004346.post-81975804319237069682023-04-07T09:52:00.000+03:002023-04-07T09:52:43.883+03:00מתקין החבילות של מיקרוסופט - הכירו את ה WinGet - המדריך המקיף.<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyba2Exn8y7zfk08atyJB3rMhZiGF5cbSALcG-8hqR6lhIQADYj1806xqB68-vO9ErdCWSCjK6J1igI2dnTjxjua7dLQXztW9wqtti3PRuRWdVnEbJaBREF1aWsNTRi3Z1HAB9CNHuahq197-3KoTQYpDxtOAP2S2TbKwpdxaoSKcvPwGVoDlQ_Gn5/s539/winget.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="303" data-original-width="539" height="208" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyba2Exn8y7zfk08atyJB3rMhZiGF5cbSALcG-8hqR6lhIQADYj1806xqB68-vO9ErdCWSCjK6J1igI2dnTjxjua7dLQXztW9wqtti3PRuRWdVnEbJaBREF1aWsNTRi3Z1HAB9CNHuahq197-3KoTQYpDxtOAP2S2TbKwpdxaoSKcvPwGVoDlQ_Gn5/w370-h208/winget.png" width="370" /></a></div><br /><p>אהלן לכם,<br />הרבה זמן שלא העלתי חומר לבלוג, ובנתיים אני רוצה להגיד לכם שהמדריך אודות ה PowerShell רץ מאוד חזק ברשת ואתם מגיבים אליו, ונותנים לי המון פידבקים, חיוביים, אז תודה רבה לכם על זה !</p><p><br /></p><p>כאיש מחשוב שאוהב מאוד את שורת הפקודה, מיקרוסופט מאוד שימחה אותי עם כלי שנקרא WinGet, שמגיע מובנה בגירסאות האחרונות של ווינדוס 10 (21h2 ומעלה - אולי אני טועה, אני כבר שנה עם ווינדוס 11, אז אני לא בטוח באיזו גירסה זה מגיע מובנה), במהלך המדריך הזה, תלמדו כיצד להתקין את מתקין החבילות (שאגב נקרא WinGet) ונלמד כיצד לבצע איתו כל מיני פעולות כמו, התקנה שדרוגים והסרה בצורה שקטה, ניסיתי לבצע איתו אוטומיציה על ידי אינטגרציה בתוך סקריפטים של PowerShell אך זה לא ממש עבד, אם הצלחתם, תעדכנו אותי בתגובות, אשמח לשמוע כיצד ביצעתם את זה.</p><p>אז, נתחיל?</p><p><u>מה זה בעצם "מתקין חבילות" ולמה צריך את זה?</u></p><p>למעשה, מתקיני חבילות קיימים כבר שנים על גבי שנים במערכות הפעלה מסוג לינוקס, באובונטו יש את מתקין החבילות שנקרא apt, בפדורה לדוגמא יש את yam, למערכות הפעלה מסוג מיקרוסופט, יש כבר מזמן את Chocolatey, בעצם עם מתקיני החבילות האלה קרה שינוי מאוד גדול ומאוד פרודוקטיבי, בעצם ברגע שהאינטרנט חובר לכל מקום אפשרי, אין יותר צורך להחזיק מאגרי תוכנה מקומית בחברה או על כונני דיסקים בבית או לחלופין על DVD, הכל נמצא ברשת ובתוך שניות ניתן להוריד את רוב התוכנות, בין אם חינמיות ובין אם בתשלום, ובכמה שלבים, אתם נמצאים עם הגירסה הכי עדכנית עם התוכנה שלכם (לצערי הרב, בחלק גדול מהמקרים, העדכונים עושים יותר נזק מתועלת, אך מההבט האבטחתי, תמיד כדי להתקין את העדכונים שהחברות מוציאות) - במיוחד לאור העליה בתדירות נסיונות הפריצה בעולם ובישראל בפרט.</p><p>היום נתמקד במתקין החבילות שמיקרוסופט החליטו להטמיע במערכות ההפעלה שלהם לתחנות הקצה - Windows, ניתן לבצע המון פעולות עם WinGet אך אנו נתמקד בעיקריות:</p><p><b><u>לפני שתתקדמו ! שימו לב:</u></b><br />לפני שתמשיכו לקרוא, וודאו שאכן תוכלו להשתמש במדריך, פתחו את PowerShell והריצו את הפקודה WinGetבמידה וקיבלתם מידע אודות הפקודה, אז הכל תקין, אך במידה וקיבלתם הודעת שגיאה שאומרת שהמערכת לא מזהה את הפקודה winget, כנראה שאתם צריכים להתקין את Winget - ניתן לבצע התקנה מתוך חנות האפליקציות של מיקרוסופט, בצעו חיפוש של winget ובעצם יופיע כמה אפשרויות, אתם צריכים לבחור את האפשרות הזאת:</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiDqUyPwzCOqSv4ewwJIRFMsm10avWEVEb0CaQS-U_oz80ujfw_cP8vH1zsuuRzgK0optQpSt3j5QZUaT1uP3rJ1Fb3pzyIpNb172Z1Uli2Yya40zWUhNzN8jIH4xBwbkU5r8P9SZv3sngo-tMZ9aj1tWoikNkDOHBXpIBhk-JIZOEoOAujCV1cQQZp" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="338" data-original-width="768" height="282" src="https://blogger.googleusercontent.com/img/a/AVvXsEiDqUyPwzCOqSv4ewwJIRFMsm10avWEVEb0CaQS-U_oz80ujfw_cP8vH1zsuuRzgK0optQpSt3j5QZUaT1uP3rJ1Fb3pzyIpNb172Z1Uli2Yya40zWUhNzN8jIH4xBwbkU5r8P9SZv3sngo-tMZ9aj1tWoikNkDOHBXpIBhk-JIZOEoOAujCV1cQQZp=w640-h282" width="640" /></a></div><br /><br /><p></p><p><u>Search </u>- נתחיל בדבר הכי טבעי, נצא מנקודת הנחה שאנחנו לא יודעים איזו תוכנה אנחנו מחפשים, ואנחנו מחפשים תוכנה חינמית לפריסת קבצי Zip - אז נריץ את הפקודה הכי טבעית - winget search zip (אני אוהב להשתמש ב Powershell אבל אתם יכולים להשתמש גם בשורת הפקודה הרגילה שהיא CMD, אגב אם עוד לא יצא לכם להשתמש ב PowerShell והייתם רוצים ללמוד על שורת הפקודה המדהימה הזאת, גם אם <b><u>בחיים לא פתחתם אותו</u></b>, בדיוק בשבילכם יש מדריך בין 10 חלקים למתחילים בדף ה"PowerShell" שנמצא <a href="https://www.leidertech.co.il/2018/03/Hebrew-PowerShell-Guid-From-Basic-First-Part.html" target="_blank">כאן</a>) והינה התוצאה של כלל התוכנות שיכולות לפתוח קיבוץ של זיפ:<br /><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgNb9F2VOcbyifl832jg9qjGCr2XobLws8WTxL01GHHCoWVOWecTNe-KfoV3PTSJPoa7vRhMqDmkcrT0Ns4bq6jSbuOuWjZZfM3opQsKu2h6-pNaKM49q4nfWrw2W1QZWqiMwhrA_0v2CNZxTVizUPlwTjGVlaXyOYfu5PmD6FfhaCvOFl5tXY2fK5Q" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="833" data-original-width="908" height="586" src="https://blogger.googleusercontent.com/img/a/AVvXsEgNb9F2VOcbyifl832jg9qjGCr2XobLws8WTxL01GHHCoWVOWecTNe-KfoV3PTSJPoa7vRhMqDmkcrT0Ns4bq6jSbuOuWjZZfM3opQsKu2h6-pNaKM49q4nfWrw2W1QZWqiMwhrA_0v2CNZxTVizUPlwTjGVlaXyOYfu5PmD6FfhaCvOFl5tXY2fK5Q=w640-h586" width="640" /></a></div><br />ובעצם ניתן לראות את כלל התוכנות שנמצאו, חלקן מתוך חנות האפליקציות של מיקרוסופט MsStore וחלקן מתוך רשימה שמעדכנת הקהילה (לכן תקחו בחשבון שההתקנה היא בדרך כלל על אחריותכם, לדעתי האישית, אני לא חושב שמיקרוסופט תאפשר שיהיה קוד זדוני שיותקן דרך משהו שהיא מפרסמת), מה הבעיה ברשימה הזאת? זה שיש המון דברים ולך תדע עכשיו את מי כדי לנו להתקין, אבל נגיד שאנחנו מכירים את 7zip ואנחנו רוצים להתקין אותו, אז בעצם צריך לצמצם את הרשימה ולאפשר לנו ולבקש להציג לנו רק את 7zip, ובעצם נבצע את זה עם הפקודה הכי הגיונית שיש winget search 7zip ואז בעצם הרשימה תצטמצם:<p></p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhPqbov8xRubFUUgpz2fR6fuwkEmppNluzzfWFVSsRBFfz3N2zs3hOACRoaGZB9BIxLiHRPquQOBy5Neprj2fAFL88MpfpSdq9R7OhEY54tXxUNr4X0ZJGpMTraqEmvV4vXLc-umXgexQCTvCVm4xihHOZ4hMY3alWnAjHiF0stM0iMaUgyk75_KY6c" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="455" data-original-width="1200" height="242" src="https://blogger.googleusercontent.com/img/a/AVvXsEhPqbov8xRubFUUgpz2fR6fuwkEmppNluzzfWFVSsRBFfz3N2zs3hOACRoaGZB9BIxLiHRPquQOBy5Neprj2fAFL88MpfpSdq9R7OhEY54tXxUNr4X0ZJGpMTraqEmvV4vXLc-umXgexQCTvCVm4xihHOZ4hMY3alWnAjHiF0stM0iMaUgyk75_KY6c=w640-h242" width="640" /></a><br /></div><div class="separator" style="clear: both; text-align: right;"><br />עכשיו נגיד ובחרנו איזו שהיא חבילה, אבל אנחנו לא ממש יודעים מה "מסתתר" מאחוריה, ונרצה לקבל את המידע אודות החבילה הזאת, בדיוק בשביל זה, יש פקודה שנקראת Show, והיא בעצם מראה לנו מידע אודות החבילה.<br /><br /></div><div class="separator" style="clear: both; text-align: right;"><u>Show</u> - אז בשביל לקבל מידע אודות החבילה ולראות מאיפה בעצם היא הגיע למאגר התוכנות נריץ את הפקודה <br />הבאה: winget show 7zip.7zip -למה דווקא בצורה הזאת? כי בדיוק בצורה הזאת היא כתובה בעמודה "Id" שזאת בעצם "תעודת זהות" של החבילה בשביל שהמערכת תדע להבדיל בינהן וגם אנחנו, אז בעצם לאחר שנריץ את הפקודה, נקבל מידע אודות החבילה הזאת:</div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEgL9sp_9xDrmTdkfCfyU9ami8qQiZWKjIVRfJiYCKDCWGWWs8T6BrUO7HMNYg8pWd1PXnMQbML4L-ChfxQndKpO_DXARcct0lNFwkw_cGR0O1LjQGmpaJbVEkNtQzn3OkP7YH6I7uT2rEEhDcmGWBugNk2Apt0BFj-pMW1VDN2P3nQkKXspellP-hU_" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="624" data-original-width="879" height="454" src="https://blogger.googleusercontent.com/img/a/AVvXsEgL9sp_9xDrmTdkfCfyU9ami8qQiZWKjIVRfJiYCKDCWGWWs8T6BrUO7HMNYg8pWd1PXnMQbML4L-ChfxQndKpO_DXARcct0lNFwkw_cGR0O1LjQGmpaJbVEkNtQzn3OkP7YH6I7uT2rEEhDcmGWBugNk2Apt0BFj-pMW1VDN2P3nQkKXspellP-hU_=w640-h454" width="640" /></a></div><br /><br /></div>ובעצם בצורה הזאת ניתן לראות שהכל נראה תקין לחלוטין, וניתן להתקין את התכונה הזאת ללא כל בעיה, בדיוק למטרה הזאת יש פקודה רלוונטית שנקראת Install.<br /></div><p></p><p><br /><u>Install</u> - אז בעצם Install מאפשרת לבצע התקנה גם שקטה וגם "רגילה" (התקנה שקטה היא התקנה בלי חלונות קופצים ובלי אפשרות ללחוץ "הבא" או הסכמה או אי הסכמה להתקנה ובעצם הכל יותקן בצורה אוט'), בשביל לבצע התקנה בצורה הזאת נריץ את הפקודה winget install 7zip.7zip --silent ובעצם תוך שניות, הקובץ ירד למחשב שלנו, ולאחר מכן גם יותקן:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhkpEQlscB81jMehrvvnPgl5LxxPPIO8sWR7qAq6t8Zkgs-rBPwk0BbwvcJmH0Uv3AZhvdKa5IbiGcFxOoNs_w0i3EcY2eKASR4GsYxtRqxuRE9T7rhebIXX2c5WOdNUfu7zIyv0E_Z67OmjBQ6hXmAoRzH-mMVOj_RHavlGmsNwmPxE5-GqADikNcc" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="208" data-original-width="851" height="156" src="https://blogger.googleusercontent.com/img/a/AVvXsEhkpEQlscB81jMehrvvnPgl5LxxPPIO8sWR7qAq6t8Zkgs-rBPwk0BbwvcJmH0Uv3AZhvdKa5IbiGcFxOoNs_w0i3EcY2eKASR4GsYxtRqxuRE9T7rhebIXX2c5WOdNUfu7zIyv0E_Z67OmjBQ6hXmAoRzH-mMVOj_RHavlGmsNwmPxE5-GqADikNcc=w640-h156" width="640" /></a></div><p></p><p>ישנן תוכנות שבכל מקרה יותקנו בצורה שקטה ויש כאלו שיראו לכם ממשק משתמש בסיסי, להלן רשימה של תוכנות שאני משתמש להתקנה אצל חלק מהמשתמשים שלי:</p><p>התקנה שקטה של ZOOM:</p><p>winget install -h --silent Zoom.Zoom</p><p>התקנה שקטה של אקרובט רידר:</p><p>winget install -h --id XPDP273C0XHQH2</p><p>התקנה שקטה של Advanced System Care (אני אוהב את התוכנה הזאת, היא מבצעת נקיון מעולה למחשב, מאחר ויש שם פרסומות, חלק מהאנטיוירוסים יכולים לחשוב שמדובר בווירוס, אך מנסיון רב שנים עם התוכנה הזאת, היא לא מכניסה וירוסים, וניתן להסיר אותה ללא בעיה בתום השימוש):</p><p>winget install IObit.AdvancedSystemCare</p><p><u>Upgrade</u> - במידה ואני רוצה לבצע עדכון לתוכנה מסויימת ניתן לרשום את הפקודה : winget upgrade 7zip.7zip, במידה ואני לא יודע את מה אני צריך לעדכן ואני רוצה לבדוק אילו תוכנות במחשב צריך לעדכן,<br />ניתן לרושם את הפקודה : winget upgrade --all<br /><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhtEfmcQ23Sz3vp8NMR6wIV5hRWIuhGTC3BXxQpdZ_L4GzEXBG2ivIj-dfX9G_MNiCDr8EBmH7f53HgyRmq1qLHZWf0zRkA94J29MdhjRcieQQl9Hw75sbGV6L38mpiYGXH5bDbGRH2S2x_zoYV4jxat-vWClGkcIju8lIWJBW8el5c1wDSRfrc9WU_" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="495" data-original-width="1259" height="252" src="https://blogger.googleusercontent.com/img/a/AVvXsEhtEfmcQ23Sz3vp8NMR6wIV5hRWIuhGTC3BXxQpdZ_L4GzEXBG2ivIj-dfX9G_MNiCDr8EBmH7f53HgyRmq1qLHZWf0zRkA94J29MdhjRcieQQl9Hw75sbGV6L38mpiYGXH5bDbGRH2S2x_zoYV4jxat-vWClGkcIju8lIWJBW8el5c1wDSRfrc9WU_=w640-h252" width="640" /></a></div><br />ולאחר מכן הכל ברור - להלהן רשימה של כלל התכונות שצריך לעדכן במחשב, במידה ונרצה לעדכן תוכנה ספציפית במקרה הזה נרצה לעדכן את YandexDisk (תוכנת אחסון ענן חינמית של חברת Yandex הרוסית) <br />נרשום את הפקודה: winget upgrade Yandex.Disk:<br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEicfY9A1lp4I26yi5Se2pW2V039uwIbNsF7bTzC065syhNhVG8onxzgxLbO9BbgoX7Z_nOLlMYHmZ6LDBsjbP7jdK_ciC6XZeFv9FuPLDym5yzVA6J37x-xcsqVOWFCbJ8tQLBKOE6OK7R9U5u4ePBu0o67yWji2rkr5HRRml0WH-BTrvMUaMLXy_nw" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="221" data-original-width="854" height="166" src="https://blogger.googleusercontent.com/img/a/AVvXsEicfY9A1lp4I26yi5Se2pW2V039uwIbNsF7bTzC065syhNhVG8onxzgxLbO9BbgoX7Z_nOLlMYHmZ6LDBsjbP7jdK_ciC6XZeFv9FuPLDym5yzVA6J37x-xcsqVOWFCbJ8tQLBKOE6OK7R9U5u4ePBu0o67yWji2rkr5HRRml0WH-BTrvMUaMLXy_nw=w640-h166" width="640" /></a></div><br />לאחר כמה שניות, התוכנה כבר תהיה מעודכנת לגירסה האחרונה.<br /><p></p><p><u>Uninstall</u> - במידה ונרצה להסיר איזו תוכנה - הפקודה גם כן מאוד ברורה winget uninstall 7zip.7zip גם כן, ההסרה מתבצעת על פי "תעודת הזהות" של התוכנה.<br /><br /><u>List</u><i> - </i>משתמשת לבדיקת התוכנות שמותקנות אצלכם במחשב - במהלך כתיבת שורות אלו, החלטתי לבדוק כיצד הפלט של הפקודה הזאת יוצג גם בחלון של PowerShell וגם בחלון של CMD, ובעצם גיליתי את אחד ההבדלים, ה CMD לא הכי טוב בכל הנושא של "עברית" ובעצם אני אציג לכם את שתי סוגי הפלט שקיבלתי - ראשית - שימוש בפקודה, הפקודה שנריץ בשביל לקבל את רשימת התוכנות המותקנות - winget list:</p><p>פלט ראשון - PowerShell:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiFFP8cWIl64eI9-BjXRf6A_5x1NjmokvYVtVxb70ODIG_t9fVzQCftWqR8_TRhNddC3tTsygxIEYmakm__ZTHzMeeNK-K7BICv5htw8dQDC_Md7f6sAgqBlqSjdlX7tbM2dERydf2nTTAGSvF-wOlOh5rrwgzCtCHMJx-xuwBoywcTkq5wv1td-t76" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="308" data-original-width="1254" height="158" src="https://blogger.googleusercontent.com/img/a/AVvXsEiFFP8cWIl64eI9-BjXRf6A_5x1NjmokvYVtVxb70ODIG_t9fVzQCftWqR8_TRhNddC3tTsygxIEYmakm__ZTHzMeeNK-K7BICv5htw8dQDC_Md7f6sAgqBlqSjdlX7tbM2dERydf2nTTAGSvF-wOlOh5rrwgzCtCHMJx-xuwBoywcTkq5wv1td-t76=w640-h158" width="640" /></a></div><p style="text-align: center;">(שימו לב בבקשה לשורה השניה מלמעלה שמוצגת בצורה ברורה "בדיקת תקינות המחשב").</p>להלן פלט מתוך CMD:<p></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhbNzXvz2msrGI537taTdVbPhG6SnQRCBbmaM1NSErmVGPiOo3RWRV9baLT0RsUKTNO6TAKbavXvEZLmPVJIE_41Yps2S8CwsEDC9SAOEpuzkzsx-GT_WSlpVDfAia7EwPDGfUUKvELkRe-A_UoA2p0GVAoER-PZaEWd5qc-oqSVc65u8Pm2O0Uvi8R" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="265" data-original-width="959" height="176" src="https://blogger.googleusercontent.com/img/a/AVvXsEhbNzXvz2msrGI537taTdVbPhG6SnQRCBbmaM1NSErmVGPiOo3RWRV9baLT0RsUKTNO6TAKbavXvEZLmPVJIE_41Yps2S8CwsEDC9SAOEpuzkzsx-GT_WSlpVDfAia7EwPDGfUUKvELkRe-A_UoA2p0GVAoER-PZaEWd5qc-oqSVc65u8Pm2O0Uvi8R=w640-h176" width="640" /></a></div><br /><div style="text-align: center;">(את אותו הטקסט נוכל לראות בכתב מראה מאחר ו CMD לא יודע להציג עברית בצורה תקינה)</div><div style="text-align: right;"><br /></div><div style="text-align: right;">לכן גם במקרה הזה נעדיף להשתמש ב PowerShell.<br /><br /></div><u>Export</u> - נגיד ואני רוצה לבצע יצוא לרשימה של האפליקציות המותקנות, זה כמעט אפשרי, למה כמעט? כי בצורה הזאת, ניתן ליצא רק אפליקציות שניתן להתקין עם Winget או מתוך חנות האפליקציות של מיקרוסופט, לדוגמא תוכנה בשם Camtasia אי אפשר להתקין עם WinGet, לכן היא אומנם תוצג ברשימה של האפליקציות המותקונת, אך היא לא תוצג כאשר נבצע את היצוא, לכן שימו לב, במידה ולא תמצאו אפליקציה כזאת או אחרת, זה בסדר, כנראה אין אפשרות להתקין אותה דרך מתקין החבילות של מיקרוסופט.<br />בשביל לבצע את היצוא אני אשתמש בפקודה: winget export -o c:\app.txt - בפקודה הזאת הקובץ שתיצרו, <br />יופיע בכונן :C, בשביל שהוא יופיע אצלכם על שולחן העבודה (או בעצם אצל כל מחשב) נשתמש בפקודה הבאה:<br />winget export -o %USERPROFILE%\Desktop\apps.txt (ניתן לעשות העתק הדבק לתוך ה PowerShell).<br /><p></p><p><u>Import</u> - במידה ותרצו לבצע יבוא במחשב אחר של אותן האפליקציות, שביצעתם יצוא עבורן (שוב, שימו לב, ניתן ליצא ולייבא רק אפליקציות שיש בחנות האפקליציות של מיקרוסופט או WinGet), בצורה הזאת בעצם ניתן לבצע התקנה אוט' לגמרי של האפליקציות מהפקודה הקודמת, ניתן פשוט להריץ את הפקודה על המחשב החדש והכל יותקן אוט', לצורך כך נרשום את הפקודה וניתן את הנתיב שבו נמצא הקובץ שנוצר לנו בעקבות התהליך הקודם:<br />winget import -i %USERPROFILE%\Desktop\apps.txt</p><p>מקווה שנהנתם, כמו תמיד - יותר מאוחר יתווסף סרטון יוטיוב.</p><p>המייל שלי לכל שאלה: levl@leidertech.co.il</p>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com10tag:blogger.com,1999:blog-8431489733818004346.post-77254791395015955742022-07-03T09:47:00.006+03:002022-07-03T15:03:20.107+03:00 20 טיפים לשיפור הפרודוקטיביות לעובד בתחום המחשוב<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwdYqYflaPt9qTlFwhcieBWF_2bftljfzXT2ha0m4MKflHtYDeKkgxCZ5nEBIB6TEtx4pVvtCQgroppoYtQFwoBs1JejiABOxAKhO1JyctE4fnbhD7Haeq1R9ZvrrIHHrDR4yB_HzHJ059pVpPvgpFcFKwNaTl-zK_nje0X37zYPUG1s-mRk8MuUIQ/s2000/4890274.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2000" data-original-width="2000" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwdYqYflaPt9qTlFwhcieBWF_2bftljfzXT2ha0m4MKflHtYDeKkgxCZ5nEBIB6TEtx4pVvtCQgroppoYtQFwoBs1JejiABOxAKhO1JyctE4fnbhD7Haeq1R9ZvrrIHHrDR4yB_HzHJ059pVpPvgpFcFKwNaTl-zK_nje0X37zYPUG1s-mRk8MuUIQ/w400-h400/4890274.jpg" title="<a href='https://www.freepik.com/vectors/career-woman'>Career woman vector created by freepik - www.freepik.com</a>" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;">:Credit for the picture<br /></div> <div style="text-align: center;"><a href="https://www.freepik.com/vectors/career-woman">Career woman vector created by freepik - www.freepik.com</a></div><div style="text-align: center;"><br /></div><div style="text-align: center;"><br /></div><div style="text-align: right;">בתור אנשי מחשוב יש שתי דברים שתמיד חסרים לנו:</div><div style="text-align: right;">1) ידע - כי אי אפשר לדעת את הכל.</div><div style="text-align: right;">2) זמן - כי הוא מגביל אותנו במהלך היום, ואנחנו חייבים הפסקות כמו אוכל, שירותים, משפחה שינה וכד'.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">לגבי החלק הראשון אין לנו ממש מה לעשות, אנחנו אף פעם לא נדע את כל הידע בעולם, ניתן רק להעשיר אותו,<br />לגבי מספר שתיים - זמן, אותו ניתן לחסוך בעזרת כמה טיפים שלא חשבתם שיעזרו לכם, אלו טיפים שאני יישמתי לעצמי וכמות הזמן שאני חוסך ביום יום הוא אדיר!</div><div style="text-align: right;"><br /></div><div style="text-align: right;">1) <u>צרו לעצמכם "מנוע חיפוש" של כלים שאתם משתמשים בהם ביום יום</u> - צרו קובץ וורד, כתבן, או כל דבר שבא לכם שתוכלו למצוא בתוך שניה אחת את הכלי או האתר שאתם מחפשים, אל תבזבזו זמן על גוגל למציאת מה שאתם כבר מכירים.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">2) <u>השתמשו באוטומציה</u> - אם אני "תופס" את עצמי עושה את אותו הדבר כמה וכמה פעמים, וזה מצריך ממני יותר משתיים שלושה קליקים בעכבר כל פעם, זה מתחיל להיות מעיק ואני מחפש דרך איך לגרום למחשב לעשות את העבודה בשבילי, אני מעדיף לכתוב סקריפט (PowerShell או BATCH) במשך שעתיים ואפילו שלוש פעם אחת, מאשר להמשיך לעשות את אותה הפעולה כמו תוכי ולקבל עצבים, פשוט כי אחרי זה, את אותה הפעולה אני אעשה 2 דקות במקום 20 דקות, במקרה אחר הסקריפט יכול לחסוך לי 40 דקות עבודה, לדוגמא, אם אתם צריכים לדעת מידע על מחשב מסויים, מה אתם עושים בדרך כלל? בטח משתמשים בתוכנה או בכלי מובנה של מערכת ההפעלה, למה לא לבנות לעצמכם כלי כזה? גם תשפרו את הידע שלכם בכתיבת סקריפטים וגם תתאימו לעצמכם את המידע שאתם רוצים לראות ותחסכו זמן על חיפוש מידע בתוך הכלים של מערכת ההפעלה.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">3) <u>נסו להעתיק לינקים ישרים ולא אתרים</u> - אם כבר החלטתם לשמוע לסעיף הראשון, הינה עוד משהו מעניין, במידת האפשר, אם אתם צריכים להוריד משהו אצל מישהו (לקוח שלכם או מחשב שנמצא מחוץ לארגון כרגע ויש כלי\תוכנה שצריך להתקין לו) או אצלכם, אל תעתיקו את הכתובת לאתר שממנו צריך להוריד את אותו הכלי\תוכנה, נסו לשמור את הקישור להורדה עצמה, להלן דוגמא, אם אני צריך להוריד אקרובט רידר אצל משתמש כלשהו, אני יכול לשמור לינק לאתר של אדובי ושם לבצע שינויים לפי שפה, לפי מערכת הפעלה וכד' ואז כל פעם שאכנס לאתר, אני אצטרך לבצע את כל התהליך המציק הזה, במקום זאת, ברגע שאני מוריד את הקובץ, שמרתי לי קישור להורדת הקובץ, ואז ברגע שאני צריך את התוכנה, אני עושה העתק הדבק והתוכנה מתחילה לרדת.<br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">4) <u>תלמדו קיצורי מקשים וקיצורים של מערכת ההפעלה</u> - למה באמצע משהו שאתם עושים צריך להפסיק את הכל, להוריד את היד מהמקלדת ולהתחיל לחפש כיצד להגיע למקום מסויים במערכת ההפעלה?! יש לכם משהו שאתם נוהגים לפתוח הרבה? לא יותר קל לזכור מה הקיצור של אותו המקום? <br />לדוגמא, איך מגיעים ל"מדפסות" בווינדוס? <br />בעזרת ctrl+r נפתח חלון RUN ובפנים נכתוב "control printers" ונלחץ אנטר - תחשבו כמה זמן לקח לעשות את זה מהמקלדת מאשר להגיע לשם דרך תפריט ה"התחל".</div><div style="text-align: right;"><br /></div><div style="text-align: right;">5) <u>השתמשו במנהל "Clip Board" (זה המקום ששומר את כל ה"העתק הדבק" שאתם עושים)</u> - נגיד ועשיתם "העתק הדבק", איך אפשר לראות את ההיסטוריה של כל ה"העתק הדבק" שעשיתם היום? אז יש כמה דרכים, הפחות טובה, להשתמש בכלי המובנה של וינדוס 10 בעזרת winkey+v (מקש עם הציור של מיקרוסופט על המקלדת נקרא WinKey) והאמת שהוא מאוד מעפן ומאוד מוגבל וגם לרוב לא עובד כמו שצריך, לכן אני ממליץ על תוכנה חינמית ומדהימה שנקראת Ditto שאני משתמש בה כבר שנים, ניתן להוריד אותה מכאן - <a href="https://ditto-cp.sourceforge.io/" target="_blank">לינק</a></div><div style="text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhPYTag7LWhYY-Ug31xWlphMS_peg44Fn7gwEHXrMa7EivSw5wWa7ev38fXwwjuel33OjsjoO3P5L65B3EVxXBYX74uat9rqcc-yErePTpoiZ61nVtppBS6BRSZAlRS6TOncd-EizwR0oOCNPHn67JrirhhcLnGSwwaIFOgYwNQT2F0pqSqK9gCUDck" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="501" data-original-width="681" height="470" src="https://blogger.googleusercontent.com/img/a/AVvXsEhPYTag7LWhYY-Ug31xWlphMS_peg44Fn7gwEHXrMa7EivSw5wWa7ev38fXwwjuel33OjsjoO3P5L65B3EVxXBYX74uat9rqcc-yErePTpoiZ61nVtppBS6BRSZAlRS6TOncd-EizwR0oOCNPHn67JrirhhcLnGSwwaIFOgYwNQT2F0pqSqK9gCUDck=w640-h470" width="640" /></a></div>תצלום מסך מתוך התוכנה Ditto.</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><div style="text-align: right;">6) <u>השתמשו בשתי מסכים או יותר</u> - במקום לפתוח 50 חלונות והתחיל לחפש איפה החלון שאתם צריכים, במידה ויש לכם אפשרות - שימו כמה מסכים, יותר קל לסובב את הראש או להזיז את העיניים שמאלה ימינה מאשר לחפש חלון פתוח שמתחבא איפשהו.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">7) <u>וואטסאפ, טלגרם וכד'</u> - שימו את הטלפון בתיק, בצד, במטען, חברו (במידת האפשר !) את האפליקציות למחשב, הפסיקו להרים את הידיים מהמקלדת, עדיף שתעשו alt+tab מאשר לעזוב את הכל ולהתחיל להגיב למישהו בקשר לשאלה כלשהי, אפשר להקליד את אותו הדבר מהמחשב - יחסוך זמן ולא יפריע לריכוז.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">8) <u>השתמשו באחסון ענן משלכם</u> - יש מצבים שבהם הרבה יותר קל להוריד תוכנה\קובץ ולשים אותה על הענן שלכם (מגה, One Drive, Google drive וכד') ולשמור קישורים אליהם מאשר להוריד דברים מאתרים אחרים שמקשים על ההורדה - לינקים ישירים ניתן להכניס גם בתוך סקריפטים - זכרו תמיד כדי להיות תלוי רק בעצמכם !.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">9) <u>סדר בשולחן העבודה</u> - יש לכם הרבה אייקונים? גם לי, השתמשו בתוכנות שיעשו לכם סדר בשולחן העבודה במקום שתתחילו לחפש מסמך או תיקייה או קיצור דרך בכל שולחן העבודה, פשוט השתמשו בתכוכנה שתעשה לכם סדר, תחסכו הרבה מאוד זמן על לנחש "לאן זז הקובץ?" - אחת התוכנות שאני עובד איתה כבר שנים היא Fences - בזמנו קניתי אותה ב 4 דולר ומאז היא עוברת איתי ממחשב למחשב, וגם בעבודה.</div><div style="text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEj-kpArcSHIRIBeOVtME1irh6Huxp2xu8s6EUrQDW9UDhSI5yC8PFoOFIyI0Assb9-p93s91HGDGuI1qHapNOTThet2Q-szUX2Hog92YODJOtonruLimBcMRT2B2YDdaEmWFTW8uOKT1dL-3399H6ZDZQMhcMCmDtJwx_X0QKotdcrR4F8RuOLWWwqS" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="603" data-original-width="1532" height="252" src="https://blogger.googleusercontent.com/img/a/AVvXsEj-kpArcSHIRIBeOVtME1irh6Huxp2xu8s6EUrQDW9UDhSI5yC8PFoOFIyI0Assb9-p93s91HGDGuI1qHapNOTThet2Q-szUX2Hog92YODJOtonruLimBcMRT2B2YDdaEmWFTW8uOKT1dL-3399H6ZDZQMhcMCmDtJwx_X0QKotdcrR4F8RuOLWWwqS=w640-h252" width="640" /></a></div><br />ככה נראה שולחן העבדוה שלי</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: right;">10) <u>תפסיקו לחפש פקודות !</u> - יש לכם פקודה שעזרה לכם להתקין\להסיר\להפעיל משהו שחסך לכם ים זמן? רשמו אותה בקובץ טקסט, לא לכולם יש זכרון כזה שזוכר הכל אחרי פעם אחת, צרו קובץ טקסט, תשמרו שם את הפקודות שאתם משתמשים בהן, גם אם זה עזר לכם פעם אחת, בפעם נוספת זה יחסוך לכם את כל זמן החיפוש כי בתוך שניה אחת תמצאו את זה בקובץ טקסט שלכם.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">11) <u>קובץ "ספר טלפונים"</u> - אל תסמכו על מקום העבודה\מזכירה או מי שזה לא יהיה על כך שתמיד יהיה למישהו את ספר הטלפונים של ספק השירות, חברה שאתם צריכים את הטלפון שלה, אתרים של ספקים לבדיקות אחריות וכד', רשמו הכל אצלכם, צרו קובץ וורד\טקסט\אקסל וכד' - העיקר לא להיות תלוי בגוגל\חבר\קולגה - תמיד דאגו שהכל יהיה זמין לכם כאן ועכשיו.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">12) <u>התקינו כמה דפדפנים</u> - אנחנו אנשי מחשוב, אינטרנט אקספלורר כבר לא קיים בווינדוס 11 זאת אומרת שהוא לא יהיה קיים בעתיד, התקנינו לפחות עוד שלושה דפדפים חוץ מהמובנה שיש במערכת ההפעלה (באופן אישי, אני מתקין תמיד כרום, מוזילה ו Brave) על מנת שתמיד תוכלו לבדוק אתר\תוכנה וכד' על כמה וכמה דפדנים.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">13) <u>וירטואליזציה</u> - יש המון כלים שמאפשרים לבצע וירטואליזציה היום, המובנה של וינדוס Hyper-V, וכמובן יש את החברים הישנים והטובים, VBox ו VmWare, השתמשו בהם, אל תתקינו מכונה והסירו דקה אחרי זה, תמיד השאירו לכם פתח לאופציה להפעיל תוכנה ולבדוק איך היא מתנהגת - תזכרו, להפעיל מכונה קיימת הרבה יותר מהיר מאשר להתחיל להתקין אחת חדשה.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">14) <u>תשלמו על "כלים"</u> - תפסיקו להתקמצן על כלים שאתם עובדים איתם ביום יום ! נכון יש היום פריצות לכל דבר, אבל ברגע שתצא גירסה חדשה, כמות הזמן שאתם תבזבזו על מציאת פריצה חדשה, היא הרבה יותר גבוהה ממה שצריך !, במידה ויש לכם אפשרות, תשלמו על הכלי שאתם עובדים איתו, תהיו עם תוכנה חדשה, מאובטחת ובלי דאגות שמישהו החביא תוכנת רוגלה בתוך הפריצה.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">15) <u>תורידו את כל האתר למחשב</u> - יש לי מנהג שפיתחתי לפני הרבה שנים, ברגע שיש מאמר שעזר לי, אני מוריד את כולו למחשב, מחר האתר יסגר, או יקרה משהו אחר, אין מצב שאני אמצא את המידע שוב, אז אני פשוט מוריד את כל הדף וככה שוב, אני נמצא במצב שבו אני לא תלוי באף אחד.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">16) <u>צרו מאגר אישי פתרונות לתקלות</u> - אתם פותרים תקלות ביום יום, מישהו עזר לכם לפתור תקלה, תרשמו הכל, אל תסמכו על המוח שלכם - כמה שזה ישמע מצחיק, בעוד שנתיים לא תזכרו את התקלה שפתרתם אתמול, אני נוהג לרשום לעצמי ולחברי הצוות שלי מייל עם תגיות חיפוש לדוגמא "פתרון לתקלת הדפסה מאקסל" - במידה ויש גם הודעת שגיאה, אני כותב את החלק הראשון של הודעת השגיאה (אנחנו עצלנים, לא נחפש יותר מהחלק הראשון) בשביל שניתן יהיה למצוא את המייל במידת הצורך (חוסך זמן) וגם חוסך זמן בלמצוא את הפתרון לאותה התקלה, בתוך המייל אני כותב מדריך קצר ומשתף בין חברי הצוות שלי.</div><div class="separator" style="clear: both; text-align: center;"><span style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjO8XRcsxnPSB9QelZRsMAUNDfnF_llJq6Dk14M_rqW-43i29OQJ1SkYbuKNIgqEntO5AvWLkd6mmeeqG-I2VZLOzv5h-9RLPOxGpDgyACnZuncSX4MwXCDsMQ2_z154DpmVMY2y1lDFBrmxIba685nX0Pyxk_YUH5l32BgON3OJIUE-zbW9xdSKwEs" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="1043" data-original-width="1901" height="352" src="https://blogger.googleusercontent.com/img/a/AVvXsEjO8XRcsxnPSB9QelZRsMAUNDfnF_llJq6Dk14M_rqW-43i29OQJ1SkYbuKNIgqEntO5AvWLkd6mmeeqG-I2VZLOzv5h-9RLPOxGpDgyACnZuncSX4MwXCDsMQ2_z154DpmVMY2y1lDFBrmxIba685nX0Pyxk_YUH5l32BgON3OJIUE-zbW9xdSKwEs=w640-h352" width="640" /></a></div>שימו לב מאיזה תאריך המייל שצירפתי פה.</span></div><div class="separator" style="clear: both; text-align: center;"><span style="text-align: right;"><br /></span></div><div class="separator" style="clear: both; text-align: center;"><span style="text-align: right;"><br /><div style="text-align: right;">17)<u> הצטרפו לקהילות טכנולוגיות בתחום</u> - אף מאמר בגוגל שנכתב לפני שנה וחצי לא יחליף תשובה של בעל מקצוע ב"לייב", קבוצות וואטסאפ הפכו מזמן ליותר מאשר מקום בו אנשים משתפים תמונות של חתולים או בדיחות, לא פעם מצאתי את עצמי מחפש פתרונות בקבצות אלו - אלי שלמה (מומחה בעל שם עולמי בהמון תחומים בתחום המחשוב) מנהל המון קבצות בשלל נושאים בתחום המחשוב, להלן לינק לבלוג של אלי: <a href="https://misconfig.blog/community/" target="_blank">אלי שלמה בלוג</a>.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">18) <u>השתמשו נכון בשורת המשימות של ווינדוס</u> - שורת המשימות במערכת ההפעלה היא דבר מאוד חשוב, מעבר לעובדה שניתן לראות שם את כלל החלונות שאנחנו פותחים, ניתן "לקבוע" קבצים שאתם פותחים הרבה, ממליץ מאוד "להרים" את שורת המשימות על מנת שתוכלו "לדחוף" שם כמה שיותר פריטים שאותם אתם צריכים ליום יום.</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEi8EcugV1yECf4lYzukV4x-7ruGcIJlcqHdjJGQlDDG9MGkhqQQAYBxFuyZsTBTLEUQU9FY-I56E_Inyh3GSuY2_uLQnXglGHWTSh4HQj_qyJVXk5XxneU4gwewHFuxiG0fOM9-oxDoDIc7Fe4L_0Z3rAlAuA27wxs71maMeqmi9Iatzt5wRelYvQlZ" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="73" data-original-width="1920" height="24" src="https://blogger.googleusercontent.com/img/a/AVvXsEi8EcugV1yECf4lYzukV4x-7ruGcIJlcqHdjJGQlDDG9MGkhqQQAYBxFuyZsTBTLEUQU9FY-I56E_Inyh3GSuY2_uLQnXglGHWTSh4HQj_qyJVXk5XxneU4gwewHFuxiG0fOM9-oxDoDIc7Fe4L_0Z3rAlAuA27wxs71maMeqmi9Iatzt5wRelYvQlZ=w640-h24" width="640" /></a></div></div><div style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;">שורת המשימות שלי</div><br />19) <u>השתמשו נכון ב"התחל" של מערכת ההפעלה</u> - לא הכל ניתן "לתייק" לשורת המשימות, תפריט ה"התחל" של וינדוס מאפשר לכם להצמיד קיצורי דרך שישפרו לכם משמעותית את הפרודוקטיביות, חשבו על תוכניות או תיקיות שאתם פותחים הרבה פעמים ביום והצמידו אותם לתפריט ה"התחל".</div><div style="text-align: right;"><br /></div><div style="text-align: right;">20) <u>החליפו את החיפוש של מערכת ההפעלה !</u> : במידה ואתם לא משתמשים באאוטלוק, אתם יכולים בכיף לבטל את החיפוש של מיקרוסופט במערכת ההפעלה ולהתקין את Everything מכאן : <a href="https://www.voidtools.com/en-us/" target="_blank">לינק</a> - מנוע החיפוש הזה בתוך שניות יאפשר לכם לבצע חיפוש של כל מה שזז אצלכם במחשב ! כמובן יחסוך לכם המון זמן !, במידה ואתם כן משתמשים באאוטלוק, תנו למערכת ההפעלה שלכם לבצע חיפוש בכל המחשב - כן יש כאלו שלא יסכימו וזה עלול להאט מאט את המחשב יחד עם זאת יחסוך לכם המון זמן בחלפש קבצי מערכת לדוגמא קובץ hosts (כמה ממכם באמת זוכרים איפה הוא יושב?).</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjngUsD6NL013r2AtGlBum3rCZBC2uzklNAqBJyxu87bgjorPYDyZDF3hfenw-3eslMw59n1Y5Jnu1S2wUHY9qLlTnSG_7S9CWGVhIbZ6askgJFbiWs4CjjxM3cfzE1ZDpsisPQ-ENJ8wFrF0wi_i944ajgjaROsJHIhTIDeHFEsaLO2slTGBrcpdEk" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="562" data-original-width="876" height="410" src="https://blogger.googleusercontent.com/img/a/AVvXsEjngUsD6NL013r2AtGlBum3rCZBC2uzklNAqBJyxu87bgjorPYDyZDF3hfenw-3eslMw59n1Y5Jnu1S2wUHY9qLlTnSG_7S9CWGVhIbZ6askgJFbiWs4CjjxM3cfzE1ZDpsisPQ-ENJ8wFrF0wi_i944ajgjaROsJHIhTIDeHFEsaLO2slTGBrcpdEk=w640-h410" width="640" /></a></div><br /><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">אם יש לכם עוד טיפים, ניתן לשלוח לי למייל levl@leidertech.co.il ואני כמובן אצרף כאן עם קרדיט.</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br /></div> </span></div><p></p>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-52024377083896834662021-11-27T20:20:00.030+02:002021-11-29T11:16:24.707+02:00חלק 10 - הרצת פקודות על מחשבים מרוחקים בעזרת (Invoke-Command) - Implicit Remoting<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s256/PowerShell_5.0_icon.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" height="277" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/w277-h277/PowerShell_5.0_icon.png" width="277" /></a></div><div class="separator" style="clear: both; text-align: center;">חלק 10 - עבודה על מחשבים מרוחקים עם בעזרת הפקודה Invoke-command</div><br /><div style="text-align: right;"><div class="separator" style="clear: both;">כמו תמיד, במידה ולא נגעתם ב PowerShell לפני כן, וזאת הפעם הראשונה שלכם עם Powershell בבקשה עברו על המדריכים הראשונים בסדרה - ניתן למצוא את כל המדריכים בלינק הזה: <span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="font-size: 18px; text-align: center;"><a href="https://www.leidertech.co.il/p/powershell.html" style="color: #336699; text-decoration-line: none;" target="_blank">PowerShell - כל המדריכים</a>.</span></div><div class="separator" style="clear: both;"><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="font-size: 18px; text-align: center;"><br /></span></div><div class="separator" style="clear: both;">לפני שאתם מתחילים לקרוא, שימו לב,<br />במדריך זה אנחנו נצטרך לאפשר את הסרוויס Windows Remote Management, אך ורק ב<b>מכונות והשרתים שצריכים להתחבר אליהם או לבצע עליהם כל מיני דברים</b>, ככה שאם בארגון שלכם זה לא מאופשר, יש סיכוי טוב שלא תוכלו להשתמש במה שאנחנו נדבר עליו,<b><u> תחליטו לבד האם להפעיל את הסרוויס או לא, אני\הבלוג\המאמר לא אחראים על זה.</u></b></div><div class="separator" style="clear: both;"><b><u><br /></u></b></div><div class="separator" style="clear: both;">ברגע שמפעילים את ה Remoting מאחורי הקלעים קוראים הדברים הבאים:</div><div class="separator" style="clear: both;"><ol><li style="margin: 0px 0px 0.25em; padding: 0px;">הסרוויס - WinRm מתחיל לפעול, ונהיה על מצב אוט'</li><li style="margin: 0px 0px 0.25em; padding: 0px;"><b>חומת האש של ווינדוס (אם יש לכם חומת אש חיצונית, תצטרכו לעשות את זה ידנית)</b> תיצור חוק (Rгle) רגיל ל WsMan (מוזמנים לחפש ברשת מה זה) - ההתחברות עם PowerShell לא עובדת בערוץ מאובטח בין תחנה לשרת או בין שרת לתחנה, אז תקחו את זה בחשבון.<br /></li></ol><div><br /></div><div><u>קצת חפירה לפני שממשיכים :) - לא מאמין שהגעתי לחלק 10 !</u></div><div><u><br /></u></div><div>המסע שלקח אותי לתוך עולם ה PowerShell זה משהו שאני לא יכול לתאר, אני דיסלקט (בטח שמים לב לפי הכתיבה), המוח שלי זוכר דברים בצורה מאוד מאוד ספציפית, ותמיד היה לי קשה לזכור או ללמוד דברים חדשים, זה מאוד מתסכל.</div><div><br /></div><div>העבודה שלי על הבלוג ועם המדריכים של ה PowerShell ממש "תיכנתה" את המוח שלי בצורה חדשה לגמרי, לזכור דברים ללמוד דברים, וזה תענוג, והכל בגלל התמיכה שלכם בבלוג שלי, אני רואה יותר ויותר אנשים קוראים, מגיבים, מעודדים לכתוב עוד ועוד וזה תענוג אחד גדול !</div><div><br /></div><div>רציתי להגיד לכם תודה רבה על הפידבקים שלכם, לא מאמין שהגעתי לחלק 10 ! מדריך שלם מ-10 חלקים !! זה אדיר ! אני מקבל הרבה מאוד פידבקים במייל שלי (אם שכחתם לרגע levl@leidertech.co.il) ותודה רבה לכם על זה ! אתם שואלים שאלות, אתם עוזרים לי גם להבין דברים ! המון תודה רבה קוראים יקרים !</div><div><br /></div><div><u>"אחרי שצחקנו, נעבור לחלק האומנותי" (מתוך "גבעת חלפון אינה עונה"..)</u></div></div></div><div style="text-align: right;"><br /></div><div style="text-align: right;">אז אם בחלק 9 דיברנו על ממש התחברות ופתיחת סשן מול המחשב\שרת המרוחק, כאן נדבר על מצב קצת יותר מעניין, נתחיל בלהבין בעצם מה זה הפקודה הזאת שהזכרתי למעלה, בעצם מה שהיא עושה, היא "מפעילה" פקודה על מחשב מרוחק ולנו רק נותנת את הפלט, כן כן כמו שזה נשמע, אנחנו לא מתחברים מרחוק למחשב, אנחנו לא עובדים עליו באופן קבוע, זה סשן שנוצר אך ורק לצורך הרצת פקודה, ובעצם לאחר קבלת הפלט במחשב שלנו הסשן נסגר.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">תחשבו על זה רגע, במידה ואתם פותחים חיבור ישיר לשרת או למחשב או לכמה שרתים וכמה מחשבים הוא נשאר פתוח, ואם אני פותח סשן לצורך הפעלת פקודה? הסיכוי שמישהו יצליח לתפוס פאקט הוא יותר נמוך מאשר חיבור שנשאר קבוע, ככה שהרבה יותר בטוח לעבוד בו (כמובן במידה ואפשר, אם אין אפשרות אנחנו נתחבר בעזרת Enter-Pssession <br />שדיברנו עליו בחלק 9 ניתן לקרוא כאן : <a href="https://www.leidertech.co.il/2021/04/Hebrew-PowerShell-Guid-From-Basic-Ninth-Part.html" target="_blank">חלק 9</a>).</div><div style="text-align: right;"><br /></div><div style="text-align: right;">עוד פלוס מעניין, ברגע שאנחנו מריצים פקודה בעזרת Invoke-Command אנחנו לא מנצלים את המשאבים של המחשב שלנו, אלה מנצלים אך ורק את המחשב המרוחק, ולנו המחשב שלנו מציג רק את הפלט.</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><u>¿*בשביל שתוכלו לגשת למחשב מרחוק, צריך להפעיל עליו את הפקודה enable-psremoting *¿</u></div><div style="text-align: right;"><u><br /></u></div><div style="text-align: right;">ראשית, בשביל שנבין מה היא בעצם הפקודה ונוכל לזכור אותה יותר טוב, כמו שאני עושה תמיד, אני אתרגם את הפקודה לעברית בשביל שיהיה הרבה יותר ברור.</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><u>Invoke-Command</u> - בתרגום לעברית : "הפעל-פקודה" -</div><div style="text-align: right;">כמו שאנחנו מכירים ב PowerShell כל הפקודות בנויות בצורה של "מה שאתה רוצה, זה מה שאתה מקליד" אז מה שאנחנו רוצים זה להפעיל פקודה מרוחקת על מחשב, ואז לקבל את הפלט שלה (מעצבן כמה שזה פשוט נכון?) </div><div style="text-align: right;"><br /></div><div style="text-align: center;">מבנה הפקודה עם תרגום לעברית :{הפקודה\הסקריפט שלך פה} Invoke-Command -computername -scriptblock </div><div style="text-align: center;">הפעל-פקודה -שם מחשב -מקטע_סקריפט {הפקודה\הסקריפט שלך פה}</div><div style="text-align: right;"><br /></div><div style="text-align: right;">אז בעצם אם נרצה להריץ פקודה מסויימת על מחשב מסויים, לדוגמא, נריץ את הפקודה בצורה הבאה:</div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;">נריץ פקודה מרוחקת על מחשב בשם client1 בשביל לקבל מידע אודות ה IP שלו:<br /><br /></div><div dir="ltr" style="text-align: left;">Invoke-command -computername client1 -scriptblock {ipconfig}</div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;">הפלט שנקבל:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPigJM35Jq9fW04KL3n0vgMesG2ETFH6QJ2LpBy6w93MuKw8UWcYr9ynJQklbONncTpn5h7aA7IHOn6aPQrp6mcaNz-SxfTQx4JyAkjyT0t3t1lHSxRGZWwCe8I5QzSXfWq-B9F22_n8o/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="226" data-original-width="742" height="194" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPigJM35Jq9fW04KL3n0vgMesG2ETFH6QJ2LpBy6w93MuKw8UWcYr9ynJQklbONncTpn5h7aA7IHOn6aPQrp6mcaNz-SxfTQx4JyAkjyT0t3t1lHSxRGZWwCe8I5QzSXfWq-B9F22_n8o/w640-h194/image.png" width="640" /></a></div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">אני אריץ את אותה הפקודה על השרת עצמו ואז תראוה שאני מקבל כתובת שונה לחלוטין:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">(תשימו לב להבדל.. החלק הראשון מראה כתובת <b><u>10.0.0.11</u></b> החלק השני, מראה כתובת <b><u>10.0.0.1</u></b>)</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi72G0_UAAbgpvJzQc78BUa1ieuNZr4Z7c3Q5FkQto3qZ76UJtXQNu44xJbC6JZ0UMpA4zbmnLVm1Rw7-L-aklSItrKRigJg-h1iKYbgtEbywS3gserwLBPIYSdqbtQGLmlYg6LfiLdYLw/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="392" data-original-width="744" height="338" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi72G0_UAAbgpvJzQc78BUa1ieuNZr4Z7c3Q5FkQto3qZ76UJtXQNu44xJbC6JZ0UMpA4zbmnLVm1Rw7-L-aklSItrKRigJg-h1iKYbgtEbywS3gserwLBPIYSdqbtQGLmlYg6LfiLdYLw/w640-h338/image.png" width="640" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;">ניתן לבצע הכל בצורה הזאת, ליצור קבצים ותיקיות, להגדיר, למחוק בעצם לעשות מה שבא לכם, ניתן להריץ פקודות משרתים למכונות, וממכונות לשרתים, ללא כל בעיה, ניתן ליצור LOOP לדוגמא שמבצע פעולות מסויימות ובסיום התהליך אתם תקבלו רק פלט.</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">לדוגמא, נגיד ואני רוצה לנהל משתמשים מהתחנה שלי בשרת ה DC, ואני רוצה לראות את כל המשתמשים שלי, ואני בכלל לא זוכר את הפקודה של הצגת המשתמש.. מה אנחנו עושים בדרך כלל? הולכים לגוגל הישן והטוב נכון?, אז לא.. זה לא כיף, אני מעדיף לשאול את ה PowerShell.. אז בעצם אני צריך לשאול את השרת המרוחק, מה בעצם הפקודה שאני צריך?</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">נבצע את זה בעזרת הפקודה Get-Command (כמו שלמדנו בחלקים הראשונים של המדריך), רק שאנחנו נריץ אותה על השרת מהתחנה שלנו, ונבקש להציג לי מידע שיסביר לי איזו פקודה אני צריך בשיל להציג מידע, מה שנקרא "Get":</div><div dir="rtl" style="text-align: right;"><br /></div><div style="text-align: left;">Invoke-Command -computername cat1 -scriptblock {get-command -noun *user* -verb get}</div><div style="text-align: left;"><br /></div><div dir="rtl" style="text-align: right;">אני אתרגם רק את החלק של קטע הסקריפט (ScriptBlock) - :<br /></div><div dir="rtl" style="text-align: right;">noun - שם עצם</div><div dir="rtl" style="text-align: right;">verb - פעול</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">זאת אומרת, אנחנו מבקשים מ PowerShell שיציג לנו פקודה שהשם עצם שלה הוא "משתמשים" והפועל זה "קבל"\"לקבל" וכד', זאת אומרת אם אני מחבר זה יוצא בערך ככה : הצג-פקודה -שם עצם "משתמשים" -הפועל "הצג".</div><div dir="rtl" style="text-align: right;">או בקצרה "הצג לי פקודה שהשם עצם שלה זה "משתמשים" והפעולה שאני רוצה לבצע עליה זה "הצג".</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">וזאת בדיוק התוצאה שנקבל מהתחנה שלנו:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTXclrEwNCIdXHDovBvWR__1FXlTUE-yIJnpgwrgnyrZrQkq6Zv6UzF9nIEB7CA9WVcsLc-hPZWg1UowSs-diOxITltEMkr0Ya-JrAlbOyriIp3NgzBX0kqfqzXpIqi0fubGqhYemBxNU/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="262" data-original-width="860" height="194" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTXclrEwNCIdXHDovBvWR__1FXlTUE-yIJnpgwrgnyrZrQkq6Zv6UzF9nIEB7CA9WVcsLc-hPZWg1UowSs-diOxITltEMkr0Ya-JrAlbOyriIp3NgzBX0kqfqzXpIqi0fubGqhYemBxNU/w640-h194/image.png" width="640" /></a></div><br />לאחר שקיבלנו את המידע שאנחנו צריכים, בשביל שנראה שאני על תחנה ולא על שרת, אני אריץ את הפקודה הרלוונטית שהיא Get-Aduser ונראה שבגלל שעל התחנה שלנו אין מודול של ActiveDirectory אנחנו לא נקבל את המידע הרלוונטי וכל המסך שלנו ישפך ב"דם" (מושג PowerShell בגלל שהשגיאות בצבע אדום):</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUn2LvpX1XyGzhKE66NEzCKU4nqv6hlLEkbxSV9wiI4Y3Aqwkiz6gFWjvVXwFpVJFFJtHMIjaA7AKhInpJiUw7klFsXQJNH1wmdkTowrL09tW4xTUoWLuabOvnChO-dmvgpBbK4sK63u4/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="461" data-original-width="850" height="348" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUn2LvpX1XyGzhKE66NEzCKU4nqv6hlLEkbxSV9wiI4Y3Aqwkiz6gFWjvVXwFpVJFFJtHMIjaA7AKhInpJiUw7klFsXQJNH1wmdkTowrL09tW4xTUoWLuabOvnChO-dmvgpBbK4sK63u4/w640-h348/image.png" width="640" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;">כפי שניתן לראות, המחשב שלנו לא ממש מבין מה אנחנו רוצים ממנו, והציג לנו מלא "דם", אך אם נריץ את הפקודה על המחשב המרוחק, שהוא בעצם ה Acitve Directory שלנו נוכל לקבל פלט נורמאלי</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgn0YIDrNSxLpT9RBZvwDlIPUzZ5yYCPOklexiMZ6nLbXdZW3wr0J1rLXQYo4-n1GE5UnT8_EKNansrCZfQSNBgJ94_Y9Q19mrAASI17IKrg9ICpwDb27Bo0xKFRJHhcpyb0moGdEBA-b0/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="348" data-original-width="674" height="330" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgn0YIDrNSxLpT9RBZvwDlIPUzZ5yYCPOklexiMZ6nLbXdZW3wr0J1rLXQYo4-n1GE5UnT8_EKNansrCZfQSNBgJ94_Y9Q19mrAASI17IKrg9ICpwDb27Bo0xKFRJHhcpyb0moGdEBA-b0/w640-h330/image.png" width="640" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;">כמובן שניתן לא רק לקבל מידע, אלה גם להפעיל דברים מרחוק, לשנות דברים, בעצם כל מה שאנחנו עושים על מחשב מקומי, ניתן לעשות על מחשב מרוחק בצורה הזאת, בדוגמא הבאה אצור משתמש על השרת מהמחשב המקומי לאחר שאבדוק שאין באמת משתמש עם אותו השם:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">נתחיל בלבדוק אילו משתמשים יש לנו על השרת ב OU שנקרא USERS בכלל:</div><div dir="rtl" style="text-align: right;"><br /></div><div style="text-align: left;">Invoke-Command -computername cat1 -scriptblock {get-aduser -filter * -searchbase "ou=users, ou=lions,dc=linos,dc=local}|select name</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">הסיבה שרציתי קודם כל לבצע את הפקודה הנ"ל היא בשביל שתעלה לכם השאלה הבאה:<br /><br />"למה בעצם את הפייפליין הוא שם אחריי הסוגריים ולא בפנים? הרי אנחנו צריכים רק פלט..." - שאלה מצויינת, אני שמח שאאלתם, בדיוק מהסיבה שאנחנו רוצים לקבל רק את הפלט, אנחנו מבצעים סינון לכל המידע שאנחנו מקבלים מהצד השני, ומבקשים להציג לנו במחשב רק את השדה של ה"Name":</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhED0YveMILnSLPkNTFvGcbA96KJ4GowQt1OYizZ822bXWLwORE3SOXB0e5aFVX2UFmvX-Wij5yUY1lN_JX5_V6QS9iTbKAbpshyR2IY2nchNwJfhkxqvevwTbIBVUA5Li6vt4y1oxqp8w/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="263" data-original-width="948" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhED0YveMILnSLPkNTFvGcbA96KJ4GowQt1OYizZ822bXWLwORE3SOXB0e5aFVX2UFmvX-Wij5yUY1lN_JX5_V6QS9iTbKAbpshyR2IY2nchNwJfhkxqvevwTbIBVUA5Li6vt4y1oxqp8w/w640-h178/image.png" width="640" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div>כפי שניתן לראות, יש בשרת שלושה משתמשים, עכשיו נוסיף עוד משתמש אחד:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsPFqqXjBdYHyc2fTPbdbRVH3eC8ZG0zjX0oAHjrLXYmP0mLiTdl39zGU1KWV2Ap8dSQbzydo_lQUsO7TTTyhmzbec8J8RV4yZZYpNNx3k9Mc18jESiP-Ufn_I9WtwhFGMh0fqJBxGG1I/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="372" data-original-width="1112" height="214" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsPFqqXjBdYHyc2fTPbdbRVH3eC8ZG0zjX0oAHjrLXYmP0mLiTdl39zGU1KWV2Ap8dSQbzydo_lQUsO7TTTyhmzbec8J8RV4yZZYpNNx3k9Mc18jESiP-Ufn_I9WtwhFGMh0fqJBxGG1I/w640-h214/image.png" width="640" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;">עוד דוגמא, הפעם אני רוצה לעשות את זה קצת יותר מעניין..<br /><br />נגיד ואתם הולכים לקבל ציוד חדש, ואתם צריכים לבדוק איזו כתובת IP פנויה יש לכם ב DHCP.. אז בדרך כלל מה עושים? מתחברים לשרת, שמים תוכנה לסריקת כתובות IP ובודקים מה פנוי - לדעתי? יותר מדי דברים שצריך לעשות בשביל משימה כל כך פשוטה.. אפשר לעשות את זה בדרך הזאת:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">קודם נבדוק מה ה Scope שלנו:</div><div style="text-align: left;">invoke-command -computername cat1 -scriptblock {</div><div style="text-align: left;">Get-DhcpServerv4Scope |select -ExpandProperty scopeid |select -ExpandProperty IPAddressToString</div><div style="text-align: left;">}</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYONBpEQfk1LJp1FNOXVe2FBFvhn6qpnXqlidW5utO790g8iSibfliFuu60XjOZV59pMfHJ8UiED8XrTSyI-FsxBdo8UeLgB64hRxQMpsBN57WJ9kOPu9LTU3tJ490HC_t4FIbligLhjg/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="176" data-original-width="1184" height="96" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYONBpEQfk1LJp1FNOXVe2FBFvhn6qpnXqlidW5utO790g8iSibfliFuu60XjOZV59pMfHJ8UiED8XrTSyI-FsxBdo8UeLgB64hRxQMpsBN57WJ9kOPu9LTU3tJ490HC_t4FIbligLhjg/w640-h96/image.png" width="640" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;">במקרה שלי ה Scope הוא 10.0.0.0</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">לאחר מכן, נבקש מהשרת שיתן לנו 20 כתובות IP פנויות</div><div style="text-align: left;">invoke-command -computername cat1 -scriptblock {Get-DhcpServerv4FreeIPAddress -ScopeId $scope -NumAddress 20}</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPMNpYQICrq9FyycwI59GqSsJ-mD10JDNu5ftAN6zUi_p3d20LeX788yPlZaKs9GlUhF4xAVnOrOF7_6vJ0fG9-n0HlZAHi6mONpeLXdfR1b6nWJpugMWWUqvIgxfs4vVshYYPHL4j6BM/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="330" data-original-width="982" height="216" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPMNpYQICrq9FyycwI59GqSsJ-mD10JDNu5ftAN6zUi_p3d20LeX788yPlZaKs9GlUhF4xAVnOrOF7_6vJ0fG9-n0HlZAHi6mONpeLXdfR1b6nWJpugMWWUqvIgxfs4vVshYYPHL4j6BM/w640-h216/image.png" width="640" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;">כמובן שניתן לשים את הכל בתוך סקריפט אחד וזהו, לצורך ההסבר עשיתי את הדברים בצורה שונה בשביל שיהיה ברור לכולם.</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">ניתן לרשום את הכל בתוך סקריפט אחד בצורה הבאה:</div><div style="text-align: left;">invoke-command -computername cat1 -scriptblock {</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><div>$scope = Get-DhcpServerv4Scope |select -ExpandProperty scopeid |select -ExpandProperty IPAddressToString</div><div><br /></div><div>Get-DhcpServerv4FreeIPAddress -ScopeId $scope[0] -NumAddress 20</div><div><br /></div><div>}</div><div><br /></div></div><div style="text-align: left;"><br /></div><div style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEink-ucJsInIa8QVaVh4IyNmcMeuMoW_XmXQVsVCN5JXG_4jmDiSSAeaRmPlWS7RAtEiE3rzRfho0qwj2dsCVtBRlliD-Uun2XO26RuWOW7_x6UBBpvpCx9nT2zsZGY2o_iBdTBfX3nels/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="660" data-original-width="830" height="509" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEink-ucJsInIa8QVaVh4IyNmcMeuMoW_XmXQVsVCN5JXG_4jmDiSSAeaRmPlWS7RAtEiE3rzRfho0qwj2dsCVtBRlliD-Uun2XO26RuWOW7_x6UBBpvpCx9nT2zsZGY2o_iBdTBfX3nels/w640-h509/image.png" width="640" /></a></div><br /><br /></div><div style="text-align: left;"><br /></div><div dir="rtl" style="text-align: right;">עד כאן להפעם, כמו תמיד תודה רבה שקראתם.</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">המייל שלי לכל שאלה: levl@leidertech.co.il</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">כמו תמיד, סרטון מצולם:</div><div dir="rtl" style="text-align: right;"><br /></div></div>
</div>
<div style="text-align: center;"><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/KiBZVgoPHGM" title="YouTube video player" width="560"></iframe></div>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com20tag:blogger.com,1999:blog-8431489733818004346.post-2774728116665005622021-11-14T09:49:00.001+02:002021-11-14T09:49:21.955+02:00פתרון לתקלה בפתיחת קבצי Power Point, Excel, Word מתקבלת השגיאה Access denied, Contact your administrator<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9d0odc5w-Vrr6MH8kwaPPS2ticDWzn88gya7zNtuQL5USlrBeZyMXcwxB2C101gHJYmCckVqux7xFLeQx3SsqhRP8bQBQSHQncj9nZjh_2nru3CH5qecPuLFEsbQ16PA41f2PhPTcnlc/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="226" data-original-width="417" height="215" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9d0odc5w-Vrr6MH8kwaPPS2ticDWzn88gya7zNtuQL5USlrBeZyMXcwxB2C101gHJYmCckVqux7xFLeQx3SsqhRP8bQBQSHQncj9nZjh_2nru3CH5qecPuLFEsbQ16PA41f2PhPTcnlc/w398-h215/image.png" width="398" /></a></div><br /><p></p><p>מפעם לפעם אנחנו נתקלים בתקלות הזויות, אני נוהג לשתף את חברי הצוות שלי בפתרון התקלות הללו, בשביל לחסוך זמן, וגם הרבה מאוד עצבים, התקלות הללו הן כאלו שלא ממש נתקלים בהן ביום יום, באחת כזאת נתקלתי לפני כמה זמן ואני רוצה לשתף אתכם בפתרון התקלה.<br /><br /></p><p>בתור איש מחשוב, במידה ואתם ממלאים תפקיד של ראש צוות, מנכ"ל או מי שלא תהיה ואתה אחראי על אנשי צוות בתחום שלנו, חובה חובה חובה, לשתף ידע בין אנשים, אתם תתפלאו כמה זמן זה יחסוך לכם, כפי שרשמת לפני כן, אני נוהג לשלוח מייל עם תבנית מסויימת כמו לדוגמא "פתרון לתקלה: כשאתם מנסים לפתוח קובץ מתקבלת ההודעה Access denied, Contact your administrator", ככה שכשאנשי הצוות רוצים למצוא את הפתרון שהם צריכים, לא מסתבכים בחיפוש במייל ומבצעים חיפוש, גם אם מדובר בעובד הכי מבולגן בעולם.</p><p style="text-align: center;"><b><u></u></b></p><blockquote><blockquote><blockquote><b><u>¿?זכרו - בתפקיד שלנו, מילת המפתח היא פרודוקטיביות¿?</u></b></blockquote></blockquote></blockquote><p></p><p>ראשית חשוב לי להגיד, התקלה יכולה לקרוא גם בסביבת Domain וגם בסביבת WorkGroup, כאשר אחד המשתמשים שלכם מנסה לפתוח קובץ מתוך כונ רשת בשרתי הקבצים או NAS (דיסק רשת).</p><p>תסריט אתם מנסים לפתוח קובץ Power Point:<br />אתם לוחצים "דאבל קליק" על קובץ ומתקבלת ההודעה "Access denied, Contact your administrator"</p><p>לאחר מכן אתם מנסים לפתוח קובץ Word <br />ומתקבלת ההודעה:"Word could not create the work file. Check the temp"<br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzOdozcRleRoseviH0z21fqO-4ZiPTD3MJckVP-CUUVLi3ycjZAVaV7xNKruOVbJiS1nqOv339RKziolgiKAw_-Y57d4Snw6FFkb4VWJtGq1lSoQgTIEXP904nRRrPBpJBqRFjBTy8JUM/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="339" data-original-width="577" height="276" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzOdozcRleRoseviH0z21fqO-4ZiPTD3MJckVP-CUUVLi3ycjZAVaV7xNKruOVbJiS1nqOv339RKziolgiKAw_-Y57d4Snw6FFkb4VWJtGq1lSoQgTIEXP904nRRrPBpJBqRFjBTy8JUM/w470-h276/image.png" width="470" /></a></div><br /><br />קבצי אקסל עלולים לקבל את אותה השגיאה, ההרשאות תקינות לחלוטין.<div><br /></div><div>"אחרי שצחקנו, נעבור לחלק האומנותי" (גבעת חלפון אינה עונה)<br /><br />להלן פתרון לתקלה:</div><div><p class="MsoNormal" dir="RTL"><span lang="HE" style="font-family: "Arial",sans-serif;">יש
למחוק את הערכים האלה:<o:p></o:p></span></p>
<p class="MsoNormal" dir="RTL"><span lang="HE" style="font-family: "Arial",sans-serif;"> </span><span style="font-family: Arial, sans-serif;">יש למחוק את הערכים האלה:</span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;">[Word Preview]</span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;">HKEY_CLASSES_ROOT\CLSID\{84F66100-FF7C-4fb4-B0C0-02CD7FB668FE}</span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;"><br /></span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;">[PowerPoint Preview]</span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;">HKEY_CLASSES_ROOT\CLSID\{65235197-874B-4A07-BDC5-E65EA825B718}</span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;"><br /></span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;">[Excel Preview]</span></p><p class="MsoNormal" dir="RTL"><span style="font-family: Arial, sans-serif;">HKEY_CLASSES_ROOT\CLSID\{00020827-0000-0000-C000-000000000046}</span></p><p class="MsoNormal" dir="RTL"><br /></p><p class="MsoNormal" dir="RTL">במידה ובא לכם לקרוא עוד קצת על התקלה, ניתן לקרוא כאן, באתר של מיקרוסופט: <a href="https://docs.microsoft.com/en-us/office/troubleshoot/office-suite-issues/no-file-previews-file-explorer-switching-to-32-bit" target="_blank">מידע על התקלה</a></p></div>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-49621636610799882402021-11-09T13:21:00.001+02:002021-11-09T13:21:11.352+02:00איך לזרז את תהליך תחילת הארכיון ב 365?<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXBJ0zgCt338fdmTJ-NnUjgLX9ybqpZlFa8FOKocLyUHAGckKYJOGatqhH49v3iRGNqqrVwwj8fHnhDKr_SgYp1bM1aoodfk-zVuKbZxw2FlLTx7QHwfr2g-Z69zaSW2NryiC7T_g6-s4/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="340" data-original-width="496" height="219" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXBJ0zgCt338fdmTJ-NnUjgLX9ybqpZlFa8FOKocLyUHAGckKYJOGatqhH49v3iRGNqqrVwwj8fHnhDKr_SgYp1bM1aoodfk-zVuKbZxw2FlLTx7QHwfr2g-Z69zaSW2NryiC7T_g6-s4/" width="320" /></a></div><br /><br /><p></p><p>יש המון אנשים היום שעובדים עם 365, לפעמים המיילים של המשתמש שלנו מתפוצצים ויש צורך ביצירת ארכיון און ליין, מה שנקרא In Place Archive (מה שאנחנו הכרנו פעם בתור On Line Archive).</p><p>בדרך כלל המשתמש צריך רישיון של on line archive (כן יש רישיון רק לזה) או שיש לו Plan 2, לאחר מכן אנחנו ניגשים לרשימת התיבות, ומאפשרים את הארכיון אצל המשתמש.</p><p>הבעיה היא שלוקח זמן עד שהתהליך הזה בכלל מתחיל, ויש כמה פעולות שצריך לבצע בשביל שהתהליך הזה יתחיל כמו שצריך בעזרת פקודות PowerShell.</p><p>(אם אתה לא יודע להריץ פקודות של PowerShell על 365, השתמש במדריך הזה: <a href="https://www.leidertech.co.il/2020/04/connect-to-office365-with-powershell.html" target="_blank">"איך להתחבר ל 365 עם PowerShell?"</a>)</p><p><br /></p><p>נתחיל עם הפקודה הראשונה:</p><p style="text-align: left;">Start-managedfolderassistant -Identity luser@mailbox.com -FullCrawl</p><p style="text-align: right;">במידה ולאחר כמה שעות אתם מגלים שעדיין לא התחיל התהליך, ואתם מקבלים את אחת השגיאות הבאות:</p><p dir="ltr" style="text-align: left;">1.The call to Mailbox Assistants Service on server: 'VI1PR04MB6159.eurprd04.prod.outlook.com' failed. Error from RPC is -2147220992.</p><p dir="ltr" style="text-align: left;">2.The call to Mailbox Assistance Service on server: ‘NAME’ failed. Error from RPC is –2147220989</p><p style="text-align: right;">בצעו את הפעולות הבאות:</p><p style="text-align: right;">1. הריצו את הפקודה הזאת - </p><p dir="ltr" style="text-align: left;"> get-mailboxLocation –user username@domain.com | fl mailboxGuid,mailboxLocationType</p><p style="text-align: right;">הפלט אמור להיראות כך:</p><p dir="ltr" style="text-align: left;">MailboxGuid : <b><u>aace1f4e-5181-4855-a0c7-466f1fe2f1d1</u></b></p><p dir="ltr" style="text-align: left;">MailboxLocationType : Primary</p><p dir="ltr" style="text-align: left;">MailboxGuid : c2098d94-d55b-4a06-9b52-d485c54e9a19</p><p dir="ltr" style="text-align: left;">MailboxLocationType : MainArchive</p><p style="text-align: right;"><span style="text-align: left;"><br /></span></p><p style="text-align: right;"><span style="text-align: left;">2. לאחר מכן נריץ את הפקודה הזאת - </span></p><p dir="ltr" style="text-align: left;"><span style="text-align: left;">Start-ManagedFolderAssistant aace<b><u>1f4e-5181-4855-a0c7-466f1fe2f1d1</u></b></span></p><p style="text-align: right;">את החלק עם המספר מזהה בסוף הפקודה השניה (ה-Guid) לקחנו מה MailboxGuid - תזהרו לא להתבלבל, אחרת זה לא יעבוד</p><p style="text-align: right;">הדבר היחיד שנשאר לעשות עכשיו, זה לחכות, ניתן לבדוק בעוד כמה שעות בממשק ה 365 האם התהליך התחיל או לא.</p><div style="text-align: left;"><br /></div>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-23040618321949387242021-09-13T14:26:00.002+03:002021-09-13T14:27:19.312+03:00איך לשחק משחקי פלייסטיישן (PSP) בחינם על טאבלט או טלפון אנדרואיד?<div class="separator" style="clear: both; text-align: center;"><a href="https://unsplash.com/photos/1HcNgs3RrKE?utm_source=unsplash&utm_medium=referral&utm_content=creditShareLink" style="margin-left: 1em; margin-right: 1em;" target="_blank"><img border="0" data-original-height="1365" data-original-width="2048" height="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSpdtIe3pgf6DVbJ0Wm94mRYrs4h0hLa8PYfJ-svMiFZUbbO2k60Svh7yyQCBX3LqZor44NbKrqAudkswozvTtlvgfVvba5L7rpEfvM5sfo9GJF7_QIzRfZ-ySJ68tGj0LQmqNltC3grc/w385-h256/batu-gezer-1HcNgs3RrKE-unsplash.jpg" width="385" /></a></div><div style="text-align: center;"><span style="font-size: xx-small;">Credit for the Picture: <a href="https://unsplash.com/photos/1HcNgs3RrKE?utm_source=unsplash&utm_medium=referral&utm_content=creditShareLink" target="_blank">Here</a></span></div><p><br /></p><p>אז אחרי שהצלחתם למצוא כרטיס טיסה והמגפה לא דפקה לכם את התוכניות ועכשיו אתם מחפשים מה לעשות בטיסה, או בהמתנה לטיסה בשדה, סרטים צריך אינטרנט, או כרטיס זכרון מאוד גדול, שירים קצת פחות אבל עדיין צריך הרבה מקום, אז מה הפתרון בעצם?</p><p>אני חושב שמצאתי פתרון מאוד יצירתי, התחלתי לחקור ברשת מה אפשר לעשות עם הטלפון שלי במהלך טיסה או לפני טיסה וגיליתי שאני יכול לשחק עליו משחקים של PSP (מה שהיה פעם פלייסטיישן נייד), ואז לקחתי את זה צעד קדימה, יש לי טאבלט מדגם Samsung Tab S6, וכידוע ניתן לחבר עכבר, מקלדת, בקר משחק עם USB לטלפון אנדרואיד וגם לטאבלט אנדרואיד.</p><p><br /></p><p>אז מה בעצם צריך בשביל לשחק?</p><p>1) טאבלט אנדרואיד או טלפון אנדרואיד (משהו מתקדם, המכשיר הכי ישן שהיה לי לבדוק זה Samsung Note 8 )</p><p>2) מתאם USB ל Type-C</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaYijk792atcILvFutjtsIgxXfr7BZfaClMEAYr9Sd0QEUFrowNtlZ2253PlZOVfetW2Vmkt7wDngWKugYZcIPRfFtvSbZeZZY-tFxMTfDbjUZ4KW9pnZA7HtePYohNhCKxGkKNPg5-d4/s2048/20210913_140646.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1153" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaYijk792atcILvFutjtsIgxXfr7BZfaClMEAYr9Sd0QEUFrowNtlZ2253PlZOVfetW2Vmkt7wDngWKugYZcIPRfFtvSbZeZZY-tFxMTfDbjUZ4KW9pnZA7HtePYohNhCKxGkKNPg5-d4/s320/20210913_140646.jpg" width="180" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRQIV-EMBFRvJvYzT6LvF4gu8SwZiDakiYHi-upmQy_6VTvYUr7LLRyYEi_7TuOyiVgXxa9jz20y_euCH7NQvNB8pV_ttzBMQmtYFG-myFWNHSZiUd3sDwhp3z49hPFCbTKJ7pDB3An_c/s2048/20210913_140652.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1153" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRQIV-EMBFRvJvYzT6LvF4gu8SwZiDakiYHi-upmQy_6VTvYUr7LLRyYEi_7TuOyiVgXxa9jz20y_euCH7NQvNB8pV_ttzBMQmtYFG-myFWNHSZiUd3sDwhp3z49hPFCbTKJ7pDB3An_c/s320/20210913_140652.jpg" width="180" /></a></div><br /><p><br /></p><p>3) בקר משחק - עדיף עם כבל ולא אלחוטי (בצורה של פלייסטיישן או בצורה של XBOX, כל אחד מה שהוא אוהב) כי באלחוטי יש דילאי שלא מאפשר לשחק כמו שצריך.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpgFoITEZs4DGvc3ihmV0ca93CRIZ4Y-QQ0pD9lWUyZyijIJDoFq8EL6QHVOiLCf6JJ0xC0AAyNeMz1k7tym5SMSsbaipuwDz6W17VQkdfBdA7GrgPkz1uk9VaA-az4uXhAuMtbpPnsJU/s2048/20210913_140813.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1153" data-original-width="2048" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpgFoITEZs4DGvc3ihmV0ca93CRIZ4Y-QQ0pD9lWUyZyijIJDoFq8EL6QHVOiLCf6JJ0xC0AAyNeMz1k7tym5SMSsbaipuwDz6W17VQkdfBdA7GrgPkz1uk9VaA-az4uXhAuMtbpPnsJU/w400-h225/20210913_140813.jpg" width="400" /></a></div><br /><p>4) כרטיס זכרון (מיקרו SD) - אני ממליץ לרכוש 64 גיגה (במידה ויש לכם מספיק מקום בטלפון או בטאבלט, לא צריך לרכוש)</p><p>5) אמולטר (תוכנה שמדמה סביבה מסויימת ו"מרמה" את התוכנה שהיא צריכה להריץ) - חינמית שעובדת כמו שצריך, בשם PPSSPP, כן שם קצת מוזר, אבל זה עושה את העבודה - להורדה לחץ <a href="https://play.google.com/store/apps/details?id=org.ppsspp.ppsspp&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1" target="_blank">כאן</a> - עדיף להכנס לקישור דרך הטלפון או הטאבלט, תורידו ופשוט תתקינו.</p><p>¿? לידע כללי ¿? </p><p>יש גירסה חינמית ויש גירסת PRO שעולה כסף, להגיד לכם את האמת? לא יודע מה ההבדל, התקנתי את הגירסה החינמית וזה עובד כמו שצריך.</p><p><u>אז מה צריך לעשות בשביל לשחק?</u></p><p>1) להוריד את האמולטור בטלפון <br />2) להוריד משחק<br />3) להעביר את המשחק לטלפון\טאבלט - משחק נקרא ROM.<br />4) להפעיל את האמולטור<br />5) לבחור את התיקיה שבה נמצא המשחק ולהתחיל לשחק.</p><p><br /></p><p>לעוד שאלות וליצירת קשר, המייל שלי: levl@leidertech.co.il</p><p>כמו תמיד, מדריך מצולם:<br /><br /></p>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/RO8Rh3coVZ8" title="YouTube video player" width="560"></iframe>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-5289442757487111872021-04-11T21:12:00.003+03:002021-05-04T12:04:57.988+03:00מדריך ל PowerShell בעברית חלק 9 - התחברות ועבודה על מחשבים מרוחקים עם PowerShell Remoting.<div dir="rtl" style="text-align: right;" trbidi="on">
<br /></div><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s256/PowerShell_5.0_icon.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s0/PowerShell_5.0_icon.png" /></a></div><div class="separator" style="clear: both; text-align: center;">חלק 9 - התחברות למחשבים מרוחקים: PowerShell Remoting.</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: right;"><br />כמו תמיד, במידה ולא נגעתם ב PowerShell לפני כן, וזאת הפעם הראשונה שלכם עם Powershell בבקשה עברו על המדריכים הראשונים בסדרה - ניתן למצוא את כל המדריכים בלינק הזה: <span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="font-size: 18px; text-align: center;"><a href="https://www.leidertech.co.il/p/powershell.html" target="_blank">PowerShell - כל המדריכים</a>.</span></div><div class="separator" style="clear: both; text-align: right;"><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="font-size: 18px; text-align: center;"><br /></span></div><div class="separator" style="clear: both; text-align: right;">לפני שאתם מתחילים לקרוא, שימו לב, <br />במדריך זה אנחנו נצטרך לאפשר את הסרוויס Windows Remote Management, אך ורק ב<b>מכונות והשרתים שצריכים להתחבר אליהם או לבצע עליהם כל מיני דברים</b>, ככה שאם בארגון שלכם זה לא מאופשר, יש סיכוי טוב שלא תוכלו להשתמש במה שאנחנו נדבר עליו,<b><u> תחליטו לבד האם להפעיל את הסרוויס או לא, אני\הבלוג\המאמר לא אחראים על זה.</u></b></div><div class="separator" style="clear: both; text-align: right;"><b><u><br /></u></b></div><div class="separator" style="clear: both; text-align: right;">ברגע שמפעילים את ה Remoting מאחורי הקלעים קוראים הדברים הבאים:</div><div class="separator" style="clear: both; text-align: right;"><ol style="text-align: right;"><li>הסרוויס - WinRm מתחיל לפעול, ונהיה על מצב אוט'</li><li><b>חומת האש של ווינדוס (אם יש לכם חומת אש חיצונית, תצטרכו לעשות את זה ידנית)</b> תיצור חוק (Rгle) רגיל ל WsMan (מוזמנים לחפש ברשת מה זה) - ההתחברות עם PowerShell לא עובדת בארוץ מאובטח בין תחנה לשרת או בין שרת לתחנה, אז תקחו את זה בחשבון.<br /></li></ol><div><br /></div><div><br /></div><div style="text-align: center;"><b><u>שימו לב - אם אתם בסביבה שהיא לא "דומיין" ההגדרות הרבה יותר מוסבכות.</u></b></div></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">אתחיל בכך שאומר, יש הבדל גדול בין לעבוד מרחוק על מחשבים או שרתים (זאת אומרת להתחבר אליהם) לבין לנהל אותם, למה הכוונה? נגיד שאנחנו רוצים לקבל מידע על משתמש מתוך אקטיב דירקטורי, ישנן 2 דרכים לעשות את זה ב PowerShell:<br /><ol style="text-align: right;"><li>PowerShell Remoting להתחבר מרחוק לשרת - לפתוח Tunnel לשרת ה AD ולעבוד עליו.</li><li>Implicit Remoting - להשתמש בפקודה שתרוץ על המחשב המרוחק, תשתמש במשאבים של המחשב המרוחק ולנו תציג רק את המידע, מאפשר להריץ פקודות ממודולים שלא מותקנים על התחנה שלנו, בעזרת הפקודה<br />Invoke-Command, לדוגמא להריץ get-aduser ממחשב שלא מותקן עליו בכלל שרת AD.</li></ol><div>במדריך הונכחי אנחנו נלמד על PowerShell Remoting (האופציה הראשונה) בלבד - שאיתו נתחבר למחשבים מרוחקים ונעבוד עליהם, במדריך הבא נלמד על האופציה השניה, שימוש בפקודה בלבד ללא הצורף להתחבר למחשב מרוחק.</div><div><br /></div><div><br /></div><div>בתור ברירת מחדל, WinrRm מאופשר בשרתים (לדעתי כבר משרתי 2008), ולכן אם נריץ לדוגמא את הפקודה הבאה מתוך קלינט (שם השרת במקרה הזה הוא cat1 - כי אני רוסי ואני אוהב חתולים 😊, הדומיין שלי במקרה זה הוא Lions.local סתם לידע כללי 😋):</div><div><div style="text-align: center;"> get-services -computername cat1</div><br />נקבל פלט תקין, כמו בדוגמא:</div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQeJQhc8SRg428u1YCS9SCnkP-9PUSWWKBgL4f1RF_R1DQzH7sfe5ZCwlNbXQdBRICeXP1XAix31Q2-HDYBUwO6tqv7ICfIyMdXzv_hFh7pomCKPXfYj0lsuAPQ2-in5DnT99KH5fF7vc/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="478" data-original-width="630" height="365" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQeJQhc8SRg428u1YCS9SCnkP-9PUSWWKBgL4f1RF_R1DQzH7sfe5ZCwlNbXQdBRICeXP1XAix31Q2-HDYBUwO6tqv7ICfIyMdXzv_hFh7pomCKPXfYj0lsuAPQ2-in5DnT99KH5fF7vc/w480-h365/image.png" width="480" /></a></div><div><br /></div></div><div><br /><b><u>אז PowerShell Remoting, מה זה בעצם?</u></b></div><div><br /></div><div><br /></div><div>מדובר במצב שבו נוכל לעבוד על שרת או תחנה מרחוק, ממש להתחבר עם סשן למחשב מרוחק ולעבוד עליו כאילו אנחנו עובדים על המחשב שלנו, ממש דומה ל RDP רק בשורת פקודה - כמו SSH.<br /><br />אם נשאל את PowerShell כמה פקודות שקושורות ל Pssession יש (זוכרים את הפקודה Get-Command?) <br /><div style="text-align: center;">Get-Command -Noun PSSession</div><div style="text-align: center;"><br /></div><div style="text-align: right;">נקבל את כל הפקודות הללו:</div><div style="text-align: right;"><div style="text-align: center;">Connect-PSSession</div><div style="text-align: center;">Disconnect-PSSession</div><div style="text-align: center;">Enter-PSSession</div><div style="text-align: center;">Exit-PSSession</div><div style="text-align: center;">Export-PSSession</div><div style="text-align: center;">Get-PSSession</div><div style="text-align: center;">Import-PSSession</div><div style="text-align: center;">New-PSSession</div><div style="text-align: center;">Receive-PSSession</div><div style="text-align: center;">Remove-PSSession</div></div><div><br /></div><div><br /></div>אנחנו נתמקד בכמה עיקריות:</div><div style="direction: ltr;"><br /></div><div style="direction: ltr;">Enter-Pssession</div><div style="direction: ltr;">New-Pssession</div><div style="direction: ltr;">Get-Pssession</div><div style="direction: ltr;">Remove-Pssession</div><div style="direction: ltr;"><br /></div><div style="direction: ltr;"><br /></div><div style="direction: ltr;"><br /></div><div><div style="text-align: center;"><br /></div><br />במידה וננסה להתחבר לתחנה שלא מאופשר בה PowerShell Remoting נקבל שגיאה שתמלא לנו את המסך ב"דם".</div><div><br /></div><div>אם ננסה להתחבר למחשב שכן מוגדר לקבל בקשות התחברות של PowerShell נקבל שורת פקודה ואת שם המחשב המרוחק שאליו אנחנו מחוברים כמו בדוגמא הבאה:</div><div><br /></div><div>מתחברים למחשב מרוחק בעזרת הפקודה הבאה:</div><div><br /></div><div>enter-pssessiotn - computername cat1</div><div><br /></div><div>ואם הכל בסדר אז נקבל חלון כזה (שימו לב, שם המחשב המרוחק מופיע מצד שמאל, בתחילת שורת הפקודה):</div><div><br /></div><div><br /></div></div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLrpWtKFfAG4BCOJrWfDQlydtqzabM_heh0NbfoZjeUL6vtMsZdMKuCTBYGYZbZNkSyIQ567bZ7Byxf1OszQTPZR-UGyoaMl0SKEHH1zrpAIEDLIl8lyGTRponNB9zXsBjT7CXrOuf7Fc/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="100" data-original-width="427" height="105" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLrpWtKFfAG4BCOJrWfDQlydtqzabM_heh0NbfoZjeUL6vtMsZdMKuCTBYGYZbZNkSyIQ567bZ7Byxf1OszQTPZR-UGyoaMl0SKEHH1zrpAIEDLIl8lyGTRponNB9zXsBjT7CXrOuf7Fc/w449-h105/image.png" width="449" /></a></div><br /><br /></div><div class="separator" style="clear: both; text-align: right;">ועכשיו אני יכול להתחיל להריץ עליו את כל מה שאני רוצה, כאילו אני עובד על השרת עצמו, בדומה ל RDP רק בשורת הפקודה, במקרה הזה אנחנו מחוברים לשרת שהוא DC, אז אפשר להריץ מהתחנה הזאת את הפקודות של ה ActiveDirectory, ואז בהתחלה PowerShell יעשה לסשן הנוכחי את המודול של ה Active Directory ואז אפשר להריץ את כל מה שאנחנו יכולים להריץ על השרת מרחוק - לדוגמא (שימו לב לשם של המחשב המרוחק שאנחנו עובדים עליו מצד שמאל, זה אומר שאנחנו לא עובדים על המחשב המקומי !):<br /><br /></div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWyBaO45TTuf0hTru-BpmWWc4gIuzYgOyfyQqBtBXY3Pqc_OkEJb9PHHZvpZnplLIBqEOICCwISzUOHFHFrJjeb44flVSqHwFVatiScSl9Pt4vJ8NCB4ANflnDiQOFF_iBlYLd4s7e49k/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="225" data-original-width="707" height="166" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWyBaO45TTuf0hTru-BpmWWc4gIuzYgOyfyQqBtBXY3Pqc_OkEJb9PHHZvpZnplLIBqEOICCwISzUOHFHFrJjeb44flVSqHwFVatiScSl9Pt4vJ8NCB4ANflnDiQOFF_iBlYLd4s7e49k/w519-h166/image.png" width="519" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: right;"><b><u>חשוב לזכור, אם אנחנו סוגרים את חלון ה PowerShell שלנו, זה סוגר לנו את הסשן</u></b></div><div class="separator" style="clear: both; text-align: right;"><b><u><br /></u></b></div><div class="separator" style="clear: both; text-align: right;">אם נרצה להתחבר למחשב מרוחק שעליו לא מוגדר ה PowerShell Remoting, נקבל את השגיאה הבאה:</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_NH2uDIgIUtEREX_KlzIEPR35eklu_bFEi_TVQ0d17RAGtjEjdFDNlNtEOBWjMEUhx4oVwHwqU8sPbLfVtIrr-0Lod7jSHgy3uMrWOy0IDYajg_nhJqIioRMute-jZe-QBQA8Zo9GbLQ/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="152" data-original-width="922" height="100" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_NH2uDIgIUtEREX_KlzIEPR35eklu_bFEi_TVQ0d17RAGtjEjdFDNlNtEOBWjMEUhx4oVwHwqU8sPbLfVtIrr-0Lod7jSHgy3uMrWOy0IDYajg_nhJqIioRMute-jZe-QBQA8Zo9GbLQ/w605-h100/image.png" width="605" /></a></div><br />אם תקראו את השגיאה, תראו שכתוב שם בגדול "תבררו שהסרווריס במחשב היעד מוגדר ומוכן לקבל חיבורים", ואיך בעצם מגדירים את זה במחשב היעד?</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">אז קיימות שני דרכים: </div><div class="separator" style="clear: both; text-align: right;">1. במידה ויש לכם גישה למחשב היעד - לפתוח PowerShell בתור אדמין ולהריץ את הפקודה: Enable-PSRemoting</div><div class="separator" style="clear: both; text-align: right;">2.לאפשר דרך Group Policy.</div><div class="separator" style="clear: both; text-align: right;">3. במידה ואין לכם גישה למחשב היעד - יש עוד דרך אבל היא מסובכת קצת ואני לא רוצה לבזבז את הזמן על זה, תכתבו לי בתגובות אם אתם רוצים לדעת כיצד לבצע את הדרך המסובכת, ואם יהיו מספיק תגובות, אני אצור מדריך יעודי לזה.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">אנחנו נתמקד באופציה הראשונה, נפתח את PowerShell בתור אדמין ונריץ שם את הפקודה Enable-PSRemoting, מה שיקרה, זה ש PowerShell יגדיר את כל מה שצריך באופן אוט' (כמו שניתן לראות, הגדרות בחומת האש של התחנה, הגדרות של הסרוויס עצמו וכד')</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3iQJNsv9M6mSGF1qrIYaUCpRmKgPFHi8OR6urRr1qAyVuhyphenhyphenGuGZJFM8zifNNby2WqR5XDDEEhbfEITdxMZmzDYxL4-sqeDB21wYlVFkpnwT5uwtGLwf-k001Dlq7scwBNeqAyKI4coqQ/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="260" data-original-width="366" height="290" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3iQJNsv9M6mSGF1qrIYaUCpRmKgPFHi8OR6urRr1qAyVuhyphenhyphenGuGZJFM8zifNNby2WqR5XDDEEhbfEITdxMZmzDYxL4-sqeDB21wYlVFkpnwT5uwtGLwf-k001Dlq7scwBNeqAyKI4coqQ/w483-h290/image.png" width="483" /></a></div><br /><br /></div><div class="separator" style="clear: both; text-align: right;">ועכשיו אם נרצה להתחבר למחשב הזה ממחשב אחר, לא תהיה שום בעיה (בכוונה השארתי את החלון הקודם שתוכלו לראות שבהתחלה לא הצלחה להתחבר וקיבלנו מסך מלא ב"דם" ומתחת לשגיאה, אנחנו מצליחים להתחבר לאות מחשב ללא כל בעיה):</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwSbcF_Ql8rfCcSKA4uC6_HmeU7CmWkz7F_QiiiAonViO4adFuCaI2b9O7TK7vhLqdhSO3ElrsZdqwEuibJaM7yMjfXRYFVT1UwatXGvNOe5CTxUck07UTNc5qRK0L-Tw2AembbF4qgN4/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="589" data-original-width="899" height="322" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwSbcF_Ql8rfCcSKA4uC6_HmeU7CmWkz7F_QiiiAonViO4adFuCaI2b9O7TK7vhLqdhSO3ElrsZdqwEuibJaM7yMjfXRYFVT1UwatXGvNOe5CTxUck07UTNc5qRK0L-Tw2AembbF4qgN4/w541-h322/image.png" width="541" /></a></div><br /><br /></div></div></div><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: right;">בתור ניסוי, ננסה מהמחשב המרוחק, ליצור תיקייה בשם LeiderTech על מחשב client1, כמו כל דבר ב PowerShell גם כאן המבנה של הפקודה מאוד מאוד פשוט ולפי הגיון - אנחנו רוצים ליצור תיקייה בכונן :C בשם LeiderTech:</div><div class="separator" style="clear: both; text-align: center;">:new-item -name LeiderTech -type directory -path c</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: right;"><br /><span style="text-align: center;">רגע של חזרה על המאמר הראשון בסדרה לגבי "עזרה": בשביל להציג עזרה ורק דוגמאות נריץ את פקודת העזרה בצורה הזאת:<br /><div style="text-align: center;">help new-item -examples<br /><br /></div></span>והמערכת מראה לי איך אני אמור לכתוב את הפקודה בשביל ליצור תיקייה (ההפך הגמור ממה שאני רשמתי למעלה ובלי גרשיים בכלל - זה כל היופי במערכת הזאת, הגמישות):</div><div class="separator" style="clear: both; text-align: center;">"New-Item -Path "c:\" -Name "logfiles" -ItemType "directory<br /><br /><div style="text-align: right;">הגמישות של המערכת מאפשרת לי לשחק עם המיקום של הפרמטרים איך שאני רוצה ולא לפי ה"נוהל" וזה עדיין יעבוד בצורה יוצאת מהכלל :).<br /></div></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">והינה התוצאה:</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">בתצלום העליון ניתן לראות שאנחנו נמצאים על מכונה ומחוברים מרחוק לתחנה בשם Client1 (מצד שמאל יש את השם של התחנה שאליה אנחנו מחוברים):</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3qIs5hNESM0CP56kjhH4sEc_HjxBo1XpPT3yU8Gi0WEZmYHDvyYuGd4_PnfDbIWv58O6AQ7f5inR1fCETPYQKk08JZZ08Y6QZLdaUcys3gfkARcLLnJHFFcUlCNFIqj95poBS9po5u4g/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="710" data-original-width="753" height="416" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3qIs5hNESM0CP56kjhH4sEc_HjxBo1XpPT3yU8Gi0WEZmYHDvyYuGd4_PnfDbIWv58O6AQ7f5inR1fCETPYQKk08JZZ08Y6QZLdaUcys3gfkARcLLnJHFFcUlCNFIqj95poBS9po5u4g/w572-h416/image.png" width="572" /></a></div><br />בתצלום התחתון אנחנו יכולים לראות שנוצרה תיקייה בשם LeiderTech.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">בעצם בצורה הזאת, ניתן לנהל כל דבר ולהריץ סקריפטים על מחשבים\שרתים מרוחקים ללא כל בעיה, אבל עדיין יש מגבלה, והמגבלה היא שניתן להריץ סקריפט על אותו שרת שאליו אנחנו מחוברים, אז מה עושים בעצם? משתמשים בפקודה שמאפשרת לנו רק להריץ את מה שאנחנו צריכים על מחשבים מרוחקים ללא התחברות ולהציג לנו את הפלט - אבל על זה במדריך הבא - חלק 10.</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">כמו תמיד, להלן מדריך מצולם:</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">המייל שלי לכל שאלה: levl@leidertech.co.il</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;">לכלל המדריכים אודות PowerShell הכנסו ללינק הזה: <a href="https://www.leidertech.co.il/p/powershell.html" target="_blank">כלל המדריכים</a></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="405" src="https://www.youtube.com/embed/7FRrk6MCU88" width="487" youtube-src-id="7FRrk6MCU88"></iframe></div><br /><div class="separator" style="clear: both; text-align: right;"><br /></div></div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com10tag:blogger.com,1999:blog-8431489733818004346.post-40363253137101875912021-01-17T17:33:00.014+02:002021-03-30T11:20:23.226+03:00מדריך ל PowerShell בעברית חלק 8 - איך לייצא מידע לקובץ CSV מ-PowerShell?<p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s256/PowerShell_5.0_icon.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s0/PowerShell_5.0_icon.png" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">חלק 8 - איך לייצא מידע לקבצי CSV מ PowerShell?</td></tr></tbody></table><br /> <p></p><p><br /></p><p>כמו תמיד - במידה ולא עברתם על החקלים הקודמים - ראשית עברו על החלקים הקודמים ורק לאחר מכן המשיכו לקרוא:</p><div>לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div><b><u><br /></u></b></div><div>בפרק הקודם למדנו כיצד ליבא קבצי CSV, אך מה לעשות אם אנחנו צריכים ליצא קובץ CSV? ליצא מידע מהמערכת ולהעבירו למישהו וכד', בדיוק לכך נועדה הפקודה export-csv</div><div><b><u><br /></u></b></div><div>כמו שכבר ראינו, PowerShell מאוד נוחה ומאוד פשוטה, והכי חשוב מאוד הגיונית, אם יבוא של קובץ נבצע בעזרת הפקודה Import-csv, אז איך בעצם נבצע יצוא? - ניחשתם נכון, בעזרת export-csv.</div><div><br /></div><div>הכי קל לצורך ההדגמה היא לעשות יצוא של רשימת הפרוססים שרצים לי במחשב, אבל לצורך ההדגמה אני אפתח את ה Notepad כמה וכמה פעמים וארץ את הפקודה הבאה:</div><div><br /></div><div dir="ltr" style="text-align: left;">Get-Process notepad| export-csv -Path 'C:\Users\lev\Desktop\PowerShell - CSV post\test.csv'</div><div dir="ltr" style="text-align: left;"><br /></div><div>הפלט יהיה דיי מסורבל האמת ולא הכי ברור, כבר למדנו בפרקים הקודמים שניתן לבצע בחירה של העמודות (Property) שאותם נרצה להציג בעזרת הפקודה select-object, אז נוסיף אותה גם כן והתוצאה הסופית של הפקודה תהיה כזאת:</div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;">Get-Process notepad|select ProcessName, id, cpu| export-csv -Path 'C:\Users\lev\Desktop\PowerShell - CSV post\test.csv'</div><div dir="ltr" style="text-align: left;"><br /></div><div>וזה התוכן שנקבל בתוך קובץ ה CSV:</div><div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinylwBBGGIY9BCNU0ip1BAaewI2mTwT1KHh3KFJjnW5u2nr14YFzzAEdSxZKBT-XmAf0CG0ivdzTqNdTy3rBm3kDyn7Am-OtQTZL6jHOFPAEd593QEtGlkRPrtIvXLI26S3PTRaGkmWCM/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="115" data-original-width="426" height="114" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinylwBBGGIY9BCNU0ip1BAaewI2mTwT1KHh3KFJjnW5u2nr14YFzzAEdSxZKBT-XmAf0CG0ivdzTqNdTy3rBm3kDyn7Am-OtQTZL6jHOFPAEd593QEtGlkRPrtIvXLI26S3PTRaGkmWCM/w425-h114/image.png" width="425" /></a></div><br /><br />בטח אתם שואלים את עצמכם מה זה ה"Type" הזה שהופיע לנו?<br /><br />אז בתור התחלה אם תריצו Get-process notepad | get-member, למעלה תקבלו את המידע הזה:<br /><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLBBvPTbB8vhIHfXPG8UfMwjINOn5AG1Dnb0wEdfWqiGim7FcESOsXP9PK4VzP001rZCRmwFCOej3tHPjfwBX8V_jrLXXpKmfhqNW5JyZE90wesET2V2fUhr6ehPqTfKS-QiqjsJ3be08/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="145" data-original-width="543" height="85" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLBBvPTbB8vhIHfXPG8UfMwjINOn5AG1Dnb0wEdfWqiGim7FcESOsXP9PK4VzP001rZCRmwFCOej3tHPjfwBX8V_jrLXXpKmfhqNW5JyZE90wesET2V2fUhr6ehPqTfKS-QiqjsJ3be08/" width="320" /></a></div><div><br />כרגע לא ממש מעניין אותנו מה זה (ובכל זאת בחרתי להוסיף משהו קטן על הנושא ולכן במדריך המצולם אנחנו נותנים דוגמאות והסבר קצר על מה זה), אבל בשביל שזה לא יופיע לנו בקובץ אקסל, אנחנו יכולים להגיד ל PowerShell שאנחנו פשוט לא רוצים את זה שם עלידי הוספת הפרמטר "NoTypeInformation" מה שיגרום לכך שהפקודה תשתנה קצת ותראה ככה: <br /><br /></div><div dir="ltr" style="text-align: left;">Get-Process notepad |export-csv -Path 'C:\Users\lev\Desktop\PowerShell - CSV post\test.csv' -NoTypeInformation</div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;">בתור ברירת מחדל, אם אנחנו נריץ את הפקודה על פרוססים שונים, הקובץ כל פעם יתחלף, ובעצם המידע לא יתווסף אלה ישוכתב, בשביל שהוא לא ישוכתב אנחנו נצטרך להשתמש בפרמטר "Append" (בתרגום לעברית : לצרף, להוסיף), ונצרף אותו לפני "<span style="text-align: left;">NoTypeInformation" (אני מודה שאף פעם לא ניסיתי לשנות את המיקום שלהם, אך אם בא לכם בשביל הספורט, נסו ועדכנו אותי בתגובות, האם הצלחתם או לא), לצורך הדגמה נריץ את הפקודה ונראה את השוני:</span></div><div style="text-align: right;"><span style="text-align: left;"><br /></span></div><div style="text-align: right;"><span style="text-align: left;">תחילה נריץ את הקובץ הקודם ונראה את התוצאה - הקובץ שנוצר:</span></div><div style="text-align: right;"><span style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><br /></div></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtPM0Yu7dCMfUXZG1VGIn8fpYROsTpgFYZ_nMusX72NeqJU-jvSFp6-D5q7nVpkT0NwvpqonEAcKqfAWHtEO4_JaQCwF7lR-FDcF83Kf4QBBTdeDmM_NouTnVQL1wzMVrtM_7-kwHfzxg/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="330" data-original-width="265" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtPM0Yu7dCMfUXZG1VGIn8fpYROsTpgFYZ_nMusX72NeqJU-jvSFp6-D5q7nVpkT0NwvpqonEAcKqfAWHtEO4_JaQCwF7lR-FDcF83Kf4QBBTdeDmM_NouTnVQL1wzMVrtM_7-kwHfzxg/" width="193" /></a></div><br /><br /><div class="separator" style="clear: both; text-align: center;"><br /></div>במידה ונריץ את אותה הפקודה ונחליף את השם של הפרוסס, הקובץ ישוכתב, ועל מנת שהוא לא ישוכתב אלה יתווסף אל המידע הקיים בקובץ, אנחנו נוסיף את הפרמטר "Append" ונראה את התוצאה:</span></div><div style="text-align: right;"><span style="text-align: left;"><br /></span></div><div dir="ltr" style="text-align: left;"><span style="text-align: left;">Get-Process taskhostw |export-csv -Path 'C:\Users\lev\Desktop\PowerShell - CSV post\test.csv' -Append -NoTypeInformation</span></div><div style="text-align: right;"><span style="text-align: left;"><br /></span></div><div style="text-align: right;"><span style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ9AgVolTtcMLCZ7gqI8s3tPIziezm9wu3UjHUz2yjlfGIzJ2vgjmBvAsmQLU4Cr58QwsElk-V8-JsXFtRvv7vmXjKdXg03AUjfsaVBVJELeOhPk1Y1XyxwQWK5h86ym8S7tLr_gEIjRY/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="367" data-original-width="356" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ9AgVolTtcMLCZ7gqI8s3tPIziezm9wu3UjHUz2yjlfGIzJ2vgjmBvAsmQLU4Cr58QwsElk-V8-JsXFtRvv7vmXjKdXg03AUjfsaVBVJELeOhPk1Y1XyxwQWK5h86ym8S7tLr_gEIjRY/" width="233" /></a></div><br /><br />הפוטנציאל כאן מאוד גדול, יצוא של פרוססים, סרוויסים או כל דבר אחר שאפשר לסדר לתוך קובץ אקסל בצורה אוט' </span></div><div style="text-align: right;"><span style="text-align: left;"><br /></span></div><div style="text-align: right;"><span style="text-align: left;"><br /></span></div><div style="text-align: right;"><span style="text-align: left;">להלן דוגמא "מהחיים" לסקריפט שמיבא את כלל תיבות הדואר מתוך ה-365 ובודק גודל תיבה:</span></div><div style="text-align: right;"><span style="text-align: left;"><br /></span></div><div dir="ltr" style="text-align: left;"><span style="text-align: left;"><div dir="ltr">$users = Import-Csv "C:\CSV Test\Alias_test.csv"</div><div dir="ltr"> </div><div dir="ltr"> foreach ($user in $users) {</div><div dir="ltr"><br /></div><div dir="ltr"> Get-MailboxStatistics -Identity $user.UserName |</div><div dir="ltr"><br /></div><div dir="ltr"> Select-Object @{l="User Name";e="DisplayName"},</div><div dir="ltr"><br /></div><div dir="ltr"> @{l="Mail Box Size";e="TotalItemSize"}, @{l="Total Emails?";e="itemcount"} |</div><div dir="ltr"><br /></div><div dir="ltr"> Export-Csv "C:\CSV Test\Mailboxe_size.csv" -Append -NoTypeInformation<br /> } #end of ForEach loop</div></span></div><div dir="ltr" style="text-align: left;"><br /></div></div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">לכל שאלה המייל שלי: levl@leidertech.co.il</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="355" src="https://www.youtube.com/embed/kSAfAGfE24M" width="427" youtube-src-id="kSAfAGfE24M"></iframe></div><br /><div dir="ltr" style="text-align: left;"><br /><br /></div><div><br /></div><div><br /></div><div>לעוד מדריכים:</div><div><br /></div><div><div>לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div></div><div><br /></div><div><br /></div>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-67045398822949379302021-01-17T17:32:00.010+02:002021-03-30T11:19:50.862+03:00מדריך ל PowerShell בעברית חלק 7 - איך לייבא קובץ CSV לתוך PowerShell?<div dir="rtl" style="text-align: right;" trbidi="on">
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: right;"><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s256/PowerShell_5.0_icon.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s0/PowerShell_5.0_icon.png" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">חלק 7</td></tr></tbody></table><br /><div dir="ltr" style="text-align: right;"><br /></div><div dir="ltr" style="text-align: right;"><br /></div><div style="text-align: right;"><b><u>כמו תמיד, לפני שאתם ממשכים לקרוא - עברו על המדריכים הקודמים - אחרת פשוט לא תבינו על מה מדובר בשאר:</u></b></div><div style="text-align: right;"><br /></div><div style="text-align: right;">לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">אני מאמין שכולנו מכירים את המושג הזה "קובץ CSV" אבל לא הרבה יודעים מה המשמעות של CSV, אז הינה אם רציתם לדעת מה זה בדיוק, אז המשמעות היא "ערכים מופרדים בפסיקים" או Comma separated value, לרוב אנחנו מכירים קבצי CSV, בהקשר של אקסל, כי שם יש אופציה לשמור קובץ בתור CSV, אבל האמת היא שאפשר ליצור קובץ CSV בעצמנו בצורה מאוד פשוטה בתוך Notepad, פשוט רשמו שתי שדות שונים עם פסיק באמצע ומתחת לזה ערכים עם פסיק באמצע, ותשמרו אותו עם סיומת CSV, וקיבלתם קובץ CSV כמו שמייצר אקסל.</div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;">זה אחד הדברים הכי נוחים שיש ב PowerShell מאחר וכמות האפשרויות שניתן לעשות עם צורת העבודה הזאת היא אין סופית, החל מיבוא של קובץ אקסל עם מידע כזה או אחר שמאפשר ליצור אקטיב דירקטורי מלא מכלום, או לחלופין, ליצא רשימה של משתמשים בקבוצה כזאת או אחרת באקטיב דירקטורי או באופיס 365 (ממש קרה לי במקרה ביום פרסום מאמר זה.).</div><div style="text-align: right;"><br /></div><div style="text-align: right;">ניתן לבצע מגוון רחב של מוניפולציות על קבצי CSV, בעזרת הפקודה import-csv.</div><div style="text-align: right;"><br /><br /></div><div style="text-align: right;"><b><u>שיעור קצר בפרודוקטיביות - תרשו לי קצת לסתות מהנושא.<br /><br /></u></b></div><div style="text-align: right;"><b><u>(מי שאין לו כוח לקרוא את החלק הזה - מוזמן לדלג להמשך הפוסט - החלק הזה הוא רק לידע כללי)</u></b></div><div style="text-align: right;"><b><u><br /></u></b></div><div style="text-align: right;">אני חסיד מאוד גדול של פרודוקטיביות, ומבחינתי כל דבר שמקצר לי את זמן העבודה בצורה משמעותית, בעיניי קדוש.<br />במידה ורמת העצלנות שלכם היא כמו שלי (העצלנות שלי היא ברמת - "אלוהים") ואין לכם כוח לעשות את אותו הדבר כמה וכמה פעמים אז המדריך הזה יעשה לכם את החיים מאוד מאוד קלים.. כמובן שאני לא מדבר על מצב שבו אתם צריכים לבצע שינויים ב-5 משתמשים, מאחר וכמות הזמן שתבזבזו על בנית הסקריפט, חיפוש באינטרנט (במידה וחסר לכם ידע או שנתקלתם באיזו שהיא שגיאה), יהיה כבר לא משתלם מה שנקרא בשפת העם "אם הייתי עושה את זה בצורה הרגילה, כבר הייתי מסיים מזמן", בצעו חישוב של "זמן\תועלת", זכרו שאתם עובדים בשביל מישהו - ואני לא מדבר על הבוס שלכם, אני מדבר על הלקוח שלכם שבכל מקרה זה יהיה מישהו שאתם עובדים על השרת שלו מרחוק או לחלופין המקום עבודה שאתם עובדים בשבילו, הוא בסופו של יום משלם לכם כסף לא בשביל "חימום הכיסא", אלה בשביל העבודה, ואם הזמן שלקח לכם למצוא פתרון ולישם אותו הוא יותר מדי ארוך, כנראה הפתרון שחשבתם עליו לא פרודוקטיבי, והוא לוקח לכם יותר מדי זמן, הלקוח כועס, לא למדתם כלום כי קיבלתם עצבים, בקיצור, בזבזו זמן של כל העולם והבריאות שלכם, והכי חשוב במקום סיפוק והצלחה, תחושו כישלון ואכזבה, וזאת לא תוצאה טובה.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">לכן, במידה ומדובר במשימה שמצריכה ביצוע מוניפוליציה על כמה אובייקטים ביחד, (10 ומעלה) הייתי שוקל באמת לעבור לכתיבת סקריפט, זכרו שאם אתם מכירים פתרון יותר יעיל בשפת סקריפט אחרת, גם זה בסדר ! לא חובה להשתמש אך ורק ב PowerShell - אני מבין שאנחנו לומדים כאן PowerShell, אבל זכרו לבצע "ניסוי" בזמנים שמתאימים לכם ולכולם ולא על חשבון העבודה שלכם או בשעת לחץ - במיוחד אם אתם לא "משופשפים" מספיק בתחום, ככה שחשבו טוב טוב האם כדי לכם במקרה ספציפי לכתוב סקריפט ב PowerShell או שאולי כדי לעשות דברים קצת יותר פשוטים ולאחר מכן להתחיל לעבור לישום פתרונות יותר מסובכים עם PowerShell.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">במידה ויצרתם סקריפט - שימרו אותו בצורה כזאת שתוכלו לזכור היכן נשמר ומה שמו, ולפעמים הבאות בצאו בו שינויים לפי הצורך, זה יעשה לכם את החיים הרבה יותר קלים - אישית אני נמצא במצב שבו שמורים לי כמה עשרות של סקריפטים שכתבתי והשתמשתי בהם לכל מיני מטרות.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">מנסיוני - אני יכול להמליץ לכם להתחיל עם סקריפטים מאוד פשוטים, בדיקת תקשורת וכאלה, דברים שאתם בונים אפילו "רק למגירה" בשביל להתנסות, אני מביא לכם כאן סקריפט שכתבתי בתחילת דרכי - סקריפט פשוט לבדיקת תקשורת.. מה שאתם מכירים בתור "פינגים" רק בשפת PowerShell (ובכוונה עשיתי אותו מסובך מאוד בשביל ללמוד :))</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;"><div dir="ltr" style="text-align: left;">cls</div><div dir="ltr" style="text-align: left;">write-host -BackgroundColor Blue "##########################"</div><div dir="ltr" style="text-align: left;">write-host "Network Testing Script" </div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">write-host "Made by:"</div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">Write-Host "LeiderTech's It Department"</div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">write-host -BackgroundColor Blue "##########################"</div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">write-host -BackgroundColor Gray "What this thing do?"</div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">write-host "This script will 'Ping' each computer for 2 times </div><div dir="ltr" style="text-align: left;"> `n and write the result in a colorable answer"</div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">write-host "Have fun"</div><div dir="ltr" style="text-align: left;">write-host "`n"</div><div dir="ltr" style="text-align: left;">#Ask user for the computer names or ip's</div><div dir="ltr" style="text-align: left;">$orgspc = (Read-Host -Prompt "Please write the computer names of the pc's you want to check, with comma seporated (you can combine IP's and pc's to: 192.168.2.1,pc-01 etc..)").split(',') | ForEach-Object {$_.trim()}</div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;">#start the foreach loop</div><div dir="ltr" style="text-align: left;"> foreach ($pc in $orgspc) {</div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;"> #The "if" quastion: </div><div dir="ltr" style="text-align: left;"> $VerbosePreference = 'continue'</div><div dir="ltr" style="text-align: left;"> if (Test-Connection -computername $pc -Count 2 -Quiet) </div><div dir="ltr" style="text-align: left;"> {write-host -BackgroundColor green -ForegroundColor Blue "`nThe connection to ->$pc<- is OK :) !!!" }</div><div dir="ltr" style="text-align: left;"> #The "Then" condition</div><div dir="ltr" style="text-align: left;"> else { Write-Verbose "`nThe Connection to ->$pc<- is not good :( !! "}</div><div dir="ltr" style="text-align: left;"> }</div><div dir="ltr" style="text-align: left;"> write-host "`n" </div><div dir="ltr" style="text-align: left;"> pause</div><div dir="ltr" style="text-align: left;"><br /></div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;"><br /></div><b><u>אז לעיניינו - </u></b></div><div style="text-align: right;"><b><u><br /></u></b></div><div style="text-align: right;"><b><u>מתי נשתמש ב CSV?</u></b></div><div style="text-align: right;">אז אחרי שחפרתי לכם קצת, נחזור לנושא שבגללו בעצם הגעתם לפוסט הזה, מתי נשתמש בקובץ CSV בעבודה שלנו?</div><div style="text-align: right;"><br />ישנן המון סיבות ומצבים בהם נשתמש בקובץ CSV, להלן שתי הסיבות העיקריות שלי אישית יצא להשתמש בקובץ CSV:</div><div style="text-align: right;"><ol style="text-align: right;"><li>אקטיב דירקטורי (Active Directory) - תתארו לעצמכם שאת כל בניית הדומיין החדש שלכם אתם יכולים לעשות בצורה מאוד נוחה, ובתוך קובץ CSV (לרוב אנחנו נשתמש באקסל למטרה הזאת) ולאחר שביצענו שינויים ועריכה של המשתמשים לדומיין החדש - תתארו לעצמכם שאתם צריכים ליצור אקטיב דירקטורי שלם של 80-90 משתמשים.. עם הסיסמאות והפרטים המלאים שלהם.</li><li>אופיס 365 (Office 365) - המון אנשים היום עוברים לאופיס 365, מיקרוסופט מאפשרים לעבוד עם PowerShell מול אופיס 365 בצורה דיי נוחה, מה שמאפשר לנו אנשי המחשוב לעבוד בצורה הרבה יותר פרודוקטיבית, ונוחה.</li><li>וירטואליזציה - ניתן להפעיל ולכבות מכונות וירטואליות, לבצע שינויים על מכונות וירטואליות.</li><li>כל דבר שמצריך ממכם לבצע פעולות על אובייקטים שונים - כולל הדברים הכי פשוטים, לבדוק תקשורת, לכבות מחשבים וכו' וכו'.</li><li><br /></li></ol><div><br /></div><div><b><u>אז ראשית, למי שלא מכיר איך יוצרים קובץ CSV? </u></b><br /><br />במידה ואין לכם מושג איך יוצרים קובץ CSV - לימדו כיצד ליצור את הקובץ וחזרו למדריך מאחר ומדובר בידע מאוד בסיסי חובה עליכם לדעת כיצד עושים זאת - אך ומאחר ואין לכם אותו, למדו כיצד ליצור קובץ CSV ולאחר מכן חזרו להמשך המדריך.</div><div><br /></div><div><b><u>אז איך בעצם ליבא את הקובץ לתוך PowerShell?</u></b></div><div><br /></div><div>את הקובץ אנחנו מיבאים בצורה הכי פשוטה והכי אינטואיטיבית שיכולה להיות, בעזרת הפקודה import-csv בצורה הבאה:</div><div><br /></div><div>import-csv ואז את הנתיב המלא של הקובץ - שימו לב שאנחנו משתמשים בגרש "בודד" ולא גרשיים "כפולים" כאשר אנחנו רושים את הנתיב (זאת מעבר לעובדה שאפשר להשתמש ב-TAB לצורך השלמת הנתיב), ובמקרה של הדוגמא שלי, אני רוצה לביא קובץ שנמצא בתוך תיקייהת "PowerShell posts" על שולחן העבודה שלי - שנשמר בשם "users.csv".</div><div><br /></div><div>מאוד חשוב שתבינו איך נראה הקובץ CSV שלי על מנת שתוכלו להבין מה רואים בפלט של PowerShell</div><div><br /></div><div>אז אני מציג לפניכם את היצירה האחרונה שלי - קובץ בשם Users.csv</div><div><br /></div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS5bxYjFffJIlAiMcyNKPmT_OF9ugeiDrD3cAMzDe5SeEV8jrX4bmNl3GJSZ-uBuISyLcPmB2ME6qO6fjE1h9Yw9ux5QkDDrMM3a7oA1Dff2Vnc6ZOitf36njKjs22v-9qv0mlmIIgu7I/" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img alt="" data-original-height="503" data-original-width="1082" height="268" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgS5bxYjFffJIlAiMcyNKPmT_OF9ugeiDrD3cAMzDe5SeEV8jrX4bmNl3GJSZ-uBuISyLcPmB2ME6qO6fjE1h9Yw9ux5QkDDrMM3a7oA1Dff2Vnc6ZOitf36njKjs22v-9qv0mlmIIgu7I/w577-h268/image.png" width="577" /></a></div><br /><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><br /></div><div>לצורך הנוחות בהדגמה אני אשתמש ב ISE:</div><div><br /></div><div>ניבא את הקובץ: 'import-csv 'C:\Users\lev\Desktop\PowerShell - CSV post\users.csv</div><div><br /></div><div>ומיד בקונסול נוכל לראות ש PowerShell מצליח לקרוא את כל המידע רק שהוא מציג לנו את המידע כרשימה - כזאת ברירת המחדל ביבוא.</div><div><br /></div><div>(עכשיו השאלה.. האם הייתם "ילדים" טובים ותרגלתם את כל מה שלמדתם או לא? תצליחו לבצע פלט של "טבלה?".. לי לא משנה.. איך המורה היתה אומרת בבית ספר? "אני כבר יודעת את החומר.." אבל האם אתם כן ידעתם? הגיבו לי למטה.. מי ממכם ידע ומי ממכם לא באמת ידע :).. תהיו אמיתיים.. אם עדיין היה לכם קשה.. חזרו על המאמרים הקודמים..)</div><div><br /></div><div><br /></div><div>נוסיף את ה format-table בסוף ונקבל את אותו הדבר שאפשר לראות בקובץ ה CSV שבנינו:</div><div>import-csv 'C:\Users\lev\Desktop\PowerShell - CSV post\users.csv'| ft -AutoSize</div><div><br /></div><div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5exJnbbDnZRQZeru4RHk00hK-kMI_zmVN03Fpaw6wfguzf8i3r9fw0sO0lavvDI5g7nETOil9ulal72gv0Xut1VoBpcAghbQvzhBusdIjMvWBWWo_n8txKuXav1rguGrIvJ8n-7fslak/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="229" data-original-width="734" height="183" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5exJnbbDnZRQZeru4RHk00hK-kMI_zmVN03Fpaw6wfguzf8i3r9fw0sO0lavvDI5g7nETOil9ulal72gv0Xut1VoBpcAghbQvzhBusdIjMvWBWWo_n8txKuXav1rguGrIvJ8n-7fslak/w544-h183/image.png" width="544" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">לא הוספתי את כל העמודות - כי התצלום מסך הוא רק בשביל להראות שהמערכת יודעת לקרוא את התוכן כמו שצריך<br /><br /></td></tr></tbody></table><br /></div><div>אחרי שהצלחנו ליבא את הקובץ, ניתן לעשות איתו בעצם מה שאנחנו רוצים, ניתן להפוך את כל הקובץ למשתנה ולהוציא ממנו אך ורק מידע ספציפי.. בצורה הבאה - פשוט נוסיף את שם המשתמש שאנחנו רוצים בתחילת הקובץ ולאחר מכן נוסיף את כל פקודת יבוא הקובץ וזה מה שנקבל:</div><div><div style="text-align: center;">'Csvfile = import-csv 'C:\Users\lev\Desktop\PowerShell - CSV post\users.csv$</div></div><div><br /></div><div>ובעצם מתחיל להבנות לנו סקריפט:</div><div><br /></div><div>השתמשו ב"הערות" שיהיה לכם יותר נוח להבין מה עושה כל שורה, במצב שבו יש המון שורות קוד, מאוד קשה לחפש את השורה הספציפית שלכם, הערות ב PowerShell מסומנות ב-# בתחילת השורה (הערות הן נושא בפני עצמו, ואנחנו נגיע לשם בהמשך - באחד החלקים, אני מאבטיח לכם)</div><div><br /></div><div><div style="text-align: left;">Csv file Import#<br />import-csv 'C:\Users\lev\Desktop\PowerShell - CSV post\users.csv'| ft -AutoSize</div><div style="text-align: left;"><br /></div><div style="text-align: left;">Set file as variable#</div><div style="text-align: left;">'Csvfile = import-csv 'C:\Users\lev\Desktop\PowerShell - CSV post\users.csv$</div></div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: right;">לאחר שהצבנו את הקובץ שלנו במשתנה, אפשר להתחיל "לשחק איתו" בהמון מקרים אנחנו נשתמש בלולאת foreach מאחר וזאת אחת האופציות היחידות שתאפשר לנו בעצם לעבור על כל ערך ולעשות איתו משהו לדוגמא ליצור משתמשים באקטיב דירקטורי, לשנות שם לקבוצה באופיס 365 וכד על הדרך נחזור על השיעור של ForEach (למי שלא מכיר - אם יש לכם מלא שאלות על הלולאה יש הסבר מלא: <a href="https://cutt.ly/pjRalWe">כאן</a>):</div><div style="text-align: right;"><br /></div><div style="text-align: right;">ניצור את הלולאה שלנו:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><div>foreach($haverim in $Csvfile){</div><div><br /></div><div>write-host "I love to eat פרגיות with": $haverim."Last name" $haverim.'First Name'</div><div><br /></div><div>}</div><div><br /></div><div dir="rtl" style="text-align: right;">ונקבל את התוצאה:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgag1U7yaYVvsfMOq7DXW8CJrg34LShyphenhyphenkQ1fsgTQ5MEoLWHWPRguoyABiFppg6in561pcHgKgEQdawdTN1nrDk7Ryz8ahkNdX1owcDTtd0HS5WUXrYMMgFo0SfTfcKPCXd0xBZvqBaiO_o/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="145" data-original-width="326" height="189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgag1U7yaYVvsfMOq7DXW8CJrg34LShyphenhyphenkQ1fsgTQ5MEoLWHWPRguoyABiFppg6in561pcHgKgEQdawdTN1nrDk7Ryz8ahkNdX1owcDTtd0HS5WUXrYMMgFo0SfTfcKPCXd0xBZvqBaiO_o/w427-h189/image.png" width="427" /></a></div><br /><br /></div></div><div style="text-align: right;"><br /></div><div style="text-align: right;">אם אני רוצה להציג רק את העמודה של Department, אני אציב את הקובץ שיצרתי במשתנה ואשתמש ב Select-object:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><div dir="ltr">$Csvfile|select Department</div><div><br /></div><div dir="rtl" style="text-align: right;">והפלט שנקבל: </div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvx2W2xEoRmAuyJSmICm3VT_gtV78I6EPagAcujE3OV6ZTn24CXxgpRCabPC9ePE88MXdupzFuudgvqQLmilJOpvWuXvMjaah6tTvVlX40FknZ2wfQ-CBdIub2UNF4yw4tCDHhzjkuiVo/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="206" data-original-width="378" height="174" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvx2W2xEoRmAuyJSmICm3VT_gtV78I6EPagAcujE3OV6ZTn24CXxgpRCabPC9ePE88MXdupzFuudgvqQLmilJOpvWuXvMjaah6tTvVlX40FknZ2wfQ-CBdIub2UNF4yw4tCDHhzjkuiVo/" width="320" /></a></div><br /><br /></div></div><div style="text-align: right;"><u>סינון מידע, הצגת מידע ספציפי מתוך הקובץ (אם לא ברור לכם הסינטקס, עברו על המאמר שמדבר על סינונים: <a href="https://cutt.ly/UjRahDP">כאן</a>):</u></div><div style="text-align: right;"><br /></div><div style="text-align: right;">נוכל להשתמש באחד מ"אופרטורי ההשווה" או באנגלית "Comparison Operators" ששייכים לפקודת ה Where-Object, לצורך סינון מסויים והצגה של מידע ספציפי - או במקרה שלנו, שורה שלמה מתוך קובץ ה CSV - זאת אומרת נקבל את המידע שיש בתוך כל "תא" בקובץ בהתאם לרובריקה שלו - אם בתא "Department" רשום "IT" על עובד מסויים, אז נקבל את הפלט לפי הדוגמא הבאה:<br /></div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><div dir="ltr">$list = $Csvfile |where {$_."first name" -eq "bruce"} </div><div dir="ltr">$list</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUe5-NTHu3zPgtBA_oI-5sm-69ifU7LX9eGAAq4bMPVhajf8BhgPQDCTVT2uVFh0T2IfE3V3eVC3eaqBSdpFOJ4uBif43mg37m-GYYIDSLK8NrMpZ_zK9Te1aAh-xDJe0RMjcmP6YgDrk/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="252" data-original-width="730" height="195" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUe5-NTHu3zPgtBA_oI-5sm-69ifU7LX9eGAAq4bMPVhajf8BhgPQDCTVT2uVFh0T2IfE3V3eVC3eaqBSdpFOJ4uBif43mg37m-GYYIDSLK8NrMpZ_zK9Te1aAh-xDJe0RMjcmP6YgDrk/w567-h195/image.png" width="567" /></a></div><br /><br /></div><div dir="rtl" style="text-align: right;"><span style="text-align: right;">אם נרצה שפלט יהיה קצת יותר דומה לקובץ עצמו, נוכל להוסיף בסוף את ft -autosize</span></div><div dir="rtl" style="text-align: right;"><span style="text-align: right;"><br /></span></div><div dir="rtl" style="text-align: right;"><span style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2urOYf1_0IChuharlyVUK2qPOOPKtXBvomWmDB-3JpfM_1vK21Ly6IT6KLtt_GAEMSwoczew2v9fHvXCRWHCNZLfeM1ziG-AbL-berTpWVsjsezMm85oeXhq1f_Qt6Iu-qY0aGAH71Us/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="155" data-original-width="1099" height="86" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2urOYf1_0IChuharlyVUK2qPOOPKtXBvomWmDB-3JpfM_1vK21Ly6IT6KLtt_GAEMSwoczew2v9fHvXCRWHCNZLfeM1ziG-AbL-berTpWVsjsezMm85oeXhq1f_Qt6Iu-qY0aGAH71Us/w575-h86/image.png" width="575" /></a></div><br /><br /></span></div><div dir="rtl" style="text-align: right;"><span style="text-align: right;"><br /></span></div><div dir="ltr"><br /></div><div dir="rtl" style="text-align: right;"><div dir="rtl">(לידע כללי - אם שאלתם את עצמכם מדוע שמתי את ה-First name בתוך גרשיים?</div><div dir="rtl">כי יש רווח בין שתי המילים וזה מסביר למערכת שצריך להשתמש בזה כאילו זה ערך אחד)</div><div dir="rtl"><br /></div><div dir="rtl">המידע שנקבל:</div></div><div dir="rtl" style="text-align: right;">אם אני אסיר את הגרשים המערכת לא תבין מה אני רוצה ממנה ונקבל שגיאה:</div><div dir="rtl" style="text-align: right;"><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsOiGTccgzR9p0PexOk0Rp97j9ifFNP-txw-1844ZCEXPniulS3rPsGlU3AhvLM4yuoZgjmatzRLN7XA0BbkCBiVlw87Uf2oUpkBDUCd82ntxO4KlKvDiu-4F4anW-eMszBqmYV5dHeuI/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="53" data-original-width="398" height="68" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsOiGTccgzR9p0PexOk0Rp97j9ifFNP-txw-1844ZCEXPniulS3rPsGlU3AhvLM4yuoZgjmatzRLN7XA0BbkCBiVlw87Uf2oUpkBDUCd82ntxO4KlKvDiu-4F4anW-eMszBqmYV5dHeuI/w510-h68/image.png" width="510" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">המערכת מסמנת לנו שהיא לא מבינה מה זה "name" כי אין שדה כזה בקובץ CSV</td></tr></tbody></table><br />נצא מנקודת הנחה שיש לנו קובץ עם המון ערכים ואנחנו רוצים להציג ערך מסוים רק שאנחנו לא זוכרים את שמו, במקרה כזה אנחנו נוכל להשתמש באופרטור "like" של הפקודה where-object - אל תשכחו לשים את הערך שאתם צריכים בתוך "כוכביות" על מנת שהיא תחפש את כל המילה ולא רק את ההתחלה או הסוף של הערך שלכם - במקרה הזה bru.</div><div style="text-align: left;"><div><br /></div><div>$list = $Csvfile |where {$_."first name" -like "*bru*"} </div><div>$list |ft -AutoSize</div></div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><br /></div><div dir="ltr" style="text-align: center;"><br /></div><div dir="rtl" style="text-align: right;"><div style="text-align: center;"><span style="background-color: #fcff01;">(בדקו את עצמכם - חושבים שהבנתם את החומר? תחשבו על התשובה וענו לי בתגובות..</span></div><div style="text-align: center;"><span style="background-color: #fcff01;">בשאר הפוסט אני הולך להשתמש אך ורק במשתנה csvfile$ ללא הצורך ביבוא הקובץ מחדש.. למה בעצם?)</span></div></div><div dir="ltr" style="text-align: center;"><span style="background-color: #fcff01;"><br /></span></div></div><div style="text-align: right;"><br /></div><div style="text-align: right;">מאחר וקובץ CSV הוא קובץ שיש לו המון ערכים וכלל הערכים האלה נקראים "מערך" (באנגלית Array) אנחנו יכולים לגשת אך ורק ל"תא" מסויים, או לבצע פעולות אחרות שיעזרו לנו לגשת למידע מסוים בצורה הרבה יותר נוחה.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">נגיד שבקובץ שלנו יש הרבה מידע ואנחנו רוצים לדעת כמה שורות של מידע יש, אז אנחנו פשוט נבקש מהמערכת לספור<br /></div><div style="text-align: right;">בעזרת הפקודה הבאה:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;">$Csvfile.count</div><div dir="ltr" style="text-align: left;"><br /></div><div style="text-align: right;">נגיד ונבחר שורה ספציפית ונציג את כל המידע שיש בשורה הזאת:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;">$Csvfile[5]|ft -AutoSize</div><div style="text-align: right;"><br /></div><div style="text-align: right;">בגלל שהמערכת יודעת לקרוא את השמות של השדות, אז אני יכול לבקש להציג אך ורק ערך מסוים בתוך שדה מסוים:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;">$Csvfile[3].SamAccountName</div><div dir="ltr" style="text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA5o5BetQ5UTZZRrZwdd8ckX0E5HXFsEVdCJCfeo77fd2pxK2-X5hyAbcZ4DE2EP0Dw7jJ2XEVXO4H2R9CVypgzdC4lt5sDWotqKOaCC4WrgCQvCth2563kxPAFLYiZSbRRfaEFpDk65U/" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img alt="" data-original-height="93" data-original-width="390" height="118" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA5o5BetQ5UTZZRrZwdd8ckX0E5HXFsEVdCJCfeo77fd2pxK2-X5hyAbcZ4DE2EP0Dw7jJ2XEVXO4H2R9CVypgzdC4lt5sDWotqKOaCC4WrgCQvCth2563kxPAFLYiZSbRRfaEFpDk65U/w497-h118/image.png" width="497" /></a></div><div dir="ltr" style="text-align: left;"></div><div style="text-align: right;"><br /></div><div style="text-align: right;">זאת אומרת שבשביל לבחור שדה, אנחנו נשים "נקודה" ולאחריה את השם של העמודה שאנחנו רוצים להוציא ממנה מידע, חשוב לזכור שמדובר בקובץ אקסל, אז השורה של שמות העמודות לא נחשבת, השורה אחריה היא מספר "0" ואחרי היא מספר 1 זאת אומרת :</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><div dir="ltr" style="text-align: left;">first name = לא נספר</div><div dir="ltr" style="text-align: left;">Bruce = 0</div><div dir="ltr" style="text-align: left;">Tami = 1</div><div dir="ltr" style="text-align: left;">Adina = 2</div><div dir="ltr" style="text-align: left;">Miri = 3</div><br />ככה שלפי הדוגמא שלנו נקבל את התוצאה "Miri" - למרות שבאקסל עצמו היא רשומה בשדה מספר 5.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">ואיך זה נראה בקובץ ה CSV שלנו?:</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoDCSs0PJzh1H-RE5jyGiwLf8n2GGe5V2-7vyamKX8bGi1gnlRnUh08kxPOSMpUsDHSYJxZOFes5KHUSkqvfV7dPUn1v4f0lc-e5GsH3Z4IQyMoTVXhJvkvOdTGP_Lyyd4UL87SNJtoyc/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="337" data-original-width="343" height="386" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoDCSs0PJzh1H-RE5jyGiwLf8n2GGe5V2-7vyamKX8bGi1gnlRnUh08kxPOSMpUsDHSYJxZOFes5KHUSkqvfV7dPUn1v4f0lc-e5GsH3Z4IQyMoTVXhJvkvOdTGP_Lyyd4UL87SNJtoyc/w392-h386/image.png" width="392" /></a></div><br /><br /></div><div style="text-align: right;">ואם נריץ את אותו הדבר ונציב את "תא" מספר 5 נקבל את Ayala:</div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;">Alit = 4</div><div dir="ltr" style="text-align: left;">Ayala = 5</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjRDyo_Haevcidte_7b_MQTqcoKQUP0qo1UASa6m9tP4MT6ixYT3PJyUXDdYPVfGu79pupy6UrkPYe3uCSCrcJmaZTdJ5FeeD5Ph1aYi7oWfzej2QATdIVrOpeQY5tGr_OYWDV3AgR5i8/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="40" data-original-width="384" height="57" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjRDyo_Haevcidte_7b_MQTqcoKQUP0qo1UASa6m9tP4MT6ixYT3PJyUXDdYPVfGu79pupy6UrkPYe3uCSCrcJmaZTdJ5FeeD5Ph1aYi7oWfzej2QATdIVrOpeQY5tGr_OYWDV3AgR5i8/w554-h57/image.png" width="554" /></a></div><br /><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">בחלק הבא נלמד כיצד נבצע את ההפך - ניצא את המידע שקיבלנו ב PowerShell ישירות לתוך קובץ CSV.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">כמו תמיד:</div><div style="text-align: right;">המייל שלי לכל שאלה :levl@leidertech.co.il</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br /></div><div dir="ltr" style="text-align: left;"><div dir="rtl" style="text-align: center;"><iframe frameborder="0" height="360" src="https://youtube.com/embed/FUk_6PdAS3E" width="480"></iframe></div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><div dir="ltr" style="text-align: left;"><div dir="rtl" style="text-align: right;">לעוד מדריכים:</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div></div><div><br /></div></div></div></div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-73597684395992798642020-11-11T11:07:00.015+02:002021-01-23T16:11:18.662+02:00מדריך ל PowerShell בעברית חלק 6 - עבודה עם רגיסטרי<div dir="rtl" style="text-align: right;" trbidi="on">
<br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsdCulAidtzxkvJE0qUeDiTCeGCVV_82W9nX31b7E-QOl22cvoGITTzlaS9iG4YI1NPKEWC6ChgFC_lz7FDEc3f5ECrnlB5FFx53VFaiPWinyQXeALU_iLjNVRFAlZiHayRJiXnMH55I0/s281/powershell.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="248" data-original-width="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsdCulAidtzxkvJE0qUeDiTCeGCVV_82W9nX31b7E-QOl22cvoGITTzlaS9iG4YI1NPKEWC6ChgFC_lz7FDEc3f5ECrnlB5FFx53VFaiPWinyQXeALU_iLjNVRFAlZiHayRJiXnMH55I0/s0/powershell.PNG" /></a></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">כמו תמיד במידה ואל עברתם על כל שאר המאמרים, אז אין לכם מה לקרוא את המאמר הזה מאחר והוא רק יגרום לכם לבור הרבה יותר גדול בידע בנושא ה PowerShell.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">ככה שקודם כל תעברו על המדריכים הקודמים:</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on">לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">הפעם אנחנו נדבר על אחד הדברים הכי נוחים שהדהימו אותי כשהתחלתי לעבוד עם ה PowerShell, הקלות שבה הטמיעו את העבודה עם הרגיסטרי, אם לפני כן בשביל ליצור ערך ברגיסטרי היה לרשום פקודה מוזרה ולא קלה לזכור בעליל כמו: </div><div dir="rtl" style="text-align: right;" trbidi="on"><br /><div style="text-align: center;">[reg query HKCU\Software\[PATH_TO_MY_DIR] /v [KEY_NAME</div><div style="text-align: center;"><br /></div><div style="text-align: right;">ב PowerShell זה נראה כך:</div><div style="text-align: right;"><br /></div><div style="text-align: center;">\Get-ItemProperty HKCU:\SOFTWARE\Google\Chrome</div><div style="text-align: center;"><br /></div><div style="text-align: right;">ממש כאילו אתם משתמשים בסייר קבצים בשביל לסייר בין תיקיות, ולמה זה? זה תודות ל - Psproviders, ומה זה בעצם? מדובר ב"מתאם" שהופך חלקים מסויימים של המידע ל"כונן דיסק" ובעצם מיצר PsDrives , ו PsDrive הוא PowerShell Drive - שזה למעשה סוג של מידע - שמותאם\ממופה ונראה כ"כונן דוסק" שאנחנו מכירים ורואים ב CMD, מה שמאפשר לנו לגשת לכל מיני מקומות במערכת הפעלה בצורה של סייר קבצים, כמו לדוגמא אפשרות לגשת לרג'יסטרי בהיררכיה של ספריות או למפות אותו לאות כונן ולהשתמש בפקודה כמו Dir, CD וכד'.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">ניתן לגשת להרבה מאוד מקומות בצורה הזאת, אבל אנחנו נתמקד ברגיסטרי בלבד.</div><div style="text-align: right;"><br /></div><div style="text-align: right;">מי שרוצה לקרוא יותר על האופציות של ה Providers\PsDrives - מומלץ לקרוא באתר של מיקרוסופט: <a href="https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_providers?view=powershell-7" target="_blank">כאן</a></div></div><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on"><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: center;"><u>איך עובדים עם הריגסטרי ב PowerShell?</u></div><div style="direction: rtl; text-align: right;"><u><br /></u></div><div style="direction: rtl; text-align: right;">1. <u>נתחיל עם השאלה הכי חשובה - איך לסייר ברגיסטרי כאילו זאת תיקייה רגילה ?</u></div><div style="direction: rtl; text-align: right;"><u><br /></u></div><div style="direction: rtl; text-align: right;">אני מאוד שמח ששאלתם, קודם כל בשביל להבין אילו ל Psdrives יש, אפשר לגשת, נריץ בקונסול את הפקודה:<br /><div style="text-align: center;">Get-PSDrive</div><div style="text-align: center;"><br /></div><div style="text-align: center;"><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRgLXpPgm5hrKJIZLYS5NqRHfBm8jp89YGZ58MGE-G4XL0lTGvlJb8SnLeSnIIn3pg11W6BeQOKWNeVJzFeHhInKwAnA-uxAeIc9V_JkstHsfxmGgWGskd9bcLAAnjDG7VkyHtqD6u2qY/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="265" data-original-width="576" height="227" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRgLXpPgm5hrKJIZLYS5NqRHfBm8jp89YGZ58MGE-G4XL0lTGvlJb8SnLeSnIIn3pg11W6BeQOKWNeVJzFeHhInKwAnA-uxAeIc9V_JkstHsfxmGgWGskd9bcLAAnjDG7VkyHtqD6u2qY/w494-h227/image.png" width="494" /></a></div><br /><br /></div></div></div><div style="direction: rtl; text-align: right;">בתוצאה שנקבל, נראה לאילו נתונים ניתן לגשת, אותנו מעניין הרגיסטי, אנחנו יכולים לגשת ל <br />1) HKEY_LOCAL_MACHINE - בקונסול (חלון ה PowerShell) נשתמש בקיצור - hklm</div><div style="direction: rtl; text-align: right;">2) HKEY_CURRENT_USER - בקונסול (חלון ה PowerShell) נשתמש בקיצור hkcu</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;">בכל מפתח ניתן להוסיף את הערכים הרגילים שאנחנו מכירים מהרגיסטרי (כמה לדוגמא):</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;">1) REG_SZ</div><div style="direction: rtl; text-align: right;">2) REG_DWORD </div><div style="direction: rtl; text-align: right;">3) REG_MULTI_SZ</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;">להלן דוגמא להגדרה של אחד הלקוחות שאני נוהג להתחבר אליהם בעזרת FortiClient לצורך תמיכה:</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiURuZ1RtsgaAxEvw0BUxivgvD1kgmfwatKT0gmltRLIGD14milKAneYkJik_IuY75dUPkcuW8O0a72i7wnWU7dX23KPd1OvWWS9EXgdi3xH2JJjk9o_y_Y7mtyOJa-RVFmfjsCxEy93jc/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="248" data-original-width="613" height="210" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiURuZ1RtsgaAxEvw0BUxivgvD1kgmfwatKT0gmltRLIGD14milKAneYkJik_IuY75dUPkcuW8O0a72i7wnWU7dX23KPd1OvWWS9EXgdi3xH2JJjk9o_y_Y7mtyOJa-RVFmfjsCxEy93jc/w521-h210/image.png" width="521" /></a></div><br /><br /></div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;">ישנן כמה דרכים לגשת לתוך הערכים של הרגיסטרי, הראשונה, להשתמש בפקודות הרגילות של ה"דוס" כמו cd בשביל לגשת לאיזשהו ענף ברגיסטרי ואנחנו נעשה את זה בצורה הרגילה שאנחנו מכירים - :cd hklm</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;">לאחר מכן נקבל מצב מאוד מוכר לכולנו - כאילו אנחנו נמצאים בכונן מסויים : </div><div style="direction: rtl; text-align: left;"><\:PS HKLM</div><div style="direction: rtl; text-align: left;">:בערך כמו</div><div style="direction: rtl; text-align: left;"><c:\users\lev</div><div style="direction: rtl; text-align: right;">ועכשיו החלק הכי מעניין, אם נריץ את הפקודה שלומדים בכיתה א' לאנשי Microsoft שהיא dir או בהקבצה א' של לינקוס שהיא ls, נקבל את מה שאנחנו מכירים, תצוגה של התיקייה, או במקרה הזה את הרגיסטרי שאנחנו מכירים מהממשק הגרפי של מיקרוסופט (אל תתיחסו להודעת השגיאה): </div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQn-0llS5klGY4Qc1pAFNLm50BBbfyjNDFKZWf_-FP529KOhDfJA4vItbyXAOXfRUNygnhgLp86KxJGmPzr-HqaBEOjPm_90kCv8x_LQrxzktrwPuO0o0gJAGQyzW6iRob8etmoqPRkk0/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="530" data-original-width="472" height="414" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQn-0llS5klGY4Qc1pAFNLm50BBbfyjNDFKZWf_-FP529KOhDfJA4vItbyXAOXfRUNygnhgLp86KxJGmPzr-HqaBEOjPm_90kCv8x_LQrxzktrwPuO0o0gJAGQyzW6iRob8etmoqPRkk0/w369-h414/image.png" width="369" /></a></div><br /><br /></div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;">השלב הבא, כפי שכבר ניחשתם, יאפשר לנו פשוט להכנס לכל תיקייה כמו שאנחנו רגילים בדוס, או באחת הפקודות של PowerShell, לדוגמא נכנס ל Software (אל תשכחו שניתן להשתמש ב TAB לצורך השלמה אוט'): </div><div style="direction: rtl; text-align: left;"><br /></div><div style="direction: rtl; text-align: left;">PS HKLM:\> cd .\SOFTWARE</div><div style="direction: rtl; text-align: right;">ואם נקיש עכשיו dir, נקבל את התוכן, כמו שאנחנו רגילים בדוס:</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEvBuGgM_XwFEaO918O_OlrPvCAa1oznEQmBdyopr5y8jvR6yROknMN4b_Zw7ysCyRz1HKP7DCxt5ee2o-ncIXCzLNkA7PYbNAXkzqB-FyyzdkQVPfTXT-9aNRoIGBryXwjl5bBJtgUVI/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="581" data-original-width="861" height="377" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEvBuGgM_XwFEaO918O_OlrPvCAa1oznEQmBdyopr5y8jvR6yROknMN4b_Zw7ysCyRz1HKP7DCxt5ee2o-ncIXCzLNkA7PYbNAXkzqB-FyyzdkQVPfTXT-9aNRoIGBryXwjl5bBJtgUVI/w557-h377/image.png" width="557" /></a></div><br /><br /></div><div style="direction: rtl; text-align: right;">בפקודות של PowerShell יש כמה וכמה פקודות שמקבילות ל cd, כמו שלמדנו בפרקים הקודמים ניתן להשתמש בפקודה <b><u>get-alias</u></b> בשביל לבדוק מה מקביל לפקודות שאנחנו מכירים:</div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><br /></div><div style="direction: rtl; text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxFHbMp8rXverHUkZqZVdoEcY4J4XhDpmd6zytEwvEfKmADm_xVD606HbrvdmNjq-ZAGMFGFwIwPzSzfJKr9do-u6YhmcETOhfjwhqHNKgnEST4UTOaMDubydGu6wyEbxem1NoGgJF6YI/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="274" data-original-width="324" height="338" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxFHbMp8rXverHUkZqZVdoEcY4J4XhDpmd6zytEwvEfKmADm_xVD606HbrvdmNjq-ZAGMFGFwIwPzSzfJKr9do-u6YhmcETOhfjwhqHNKgnEST4UTOaMDubydGu6wyEbxem1NoGgJF6YI/w400-h338/image.png" width="400" /></a></div><br /><br /></div><div style="direction: rtl; text-align: right;"><br /></div></div><p> זאת אומרת שאם נרצה להציג את הענף software נוכל לכתוב גם <b><u>set-location .\software</u></b> ונגיע לאותו המקום:</p><p><br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOAi9vXbVmGqnY93mGtWqExX2OxBr8t0k7HGjpYr7-LTLFzhLz6ddZA1dFDF8Cc6yrj14sHSAJ9vBA4MczfxsYU9_0nDmANmf2wQKnwMCfaf2Yo_iCyAAvkCpSxOksXJauhonlZzhBnEE/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="136" data-original-width="340" height="160" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOAi9vXbVmGqnY93mGtWqExX2OxBr8t0k7HGjpYr7-LTLFzhLz6ddZA1dFDF8Cc6yrj14sHSAJ9vBA4MczfxsYU9_0nDmANmf2wQKnwMCfaf2Yo_iCyAAvkCpSxOksXJauhonlZzhBnEE/w400-h160/image.png" width="400" /></a></div><p><br /></p><p>2. <u>הצגת ערכים של "מפתחות רגיסטרי" רגיסטרי.</u><br /><br />ישנם כמה דברים שניתן להציג: </p><p>א. את המפתח (key) עצמו ואת מה שמתחתיו (Subkey) בעזרת הפקודה - Get-Item <br /><u>לדוגמא</u>: <span style="text-align: center;">Get-item HKLM:\SOFTWARE\7-Zip</span></p><p></p><div style="text-align: right;"><br />ב. ערך של המפתח ואת מה שהערך מחזיק בתוכו בעזרת הפקודה- Get-ItemProperty <br /><u>לדוגמא</u>: <span style="text-align: center;">Get-ItemProperty HKLM:\SOFTWARE\7-Zip</span><div style="text-align: right;"><br />ג. ערך ספציפי בתוך קי (Key) מסויים בעזרת הפקודה - Get-ItemPropertyValue<br /><u>לדוגמא</u>: Get-ItemPropertyValue HKLM:\SOFTWARE\7-Zip\ -Name path64</div></div><p></p><p><br /><br />לצורך הדגמא נגיד ונרצה לדעת מה יש תחת הערך 7zip, פשוט נריץ את הפקודה הבאה :</p><p><br /></p><div style="text-align: left;">Get-Item HKLM:\SOFTWARE\7-Zip</div><div style="text-align: right;"><br /></div><div style="text-align: right;">ונקבל את התוצאה הבאה :</div><p></p><blockquote style="border: none; margin: 0px 40px 0px 0px; padding: 0px;"><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on"><div dir="rtl" style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_YmQ8WZxSMfQA2M_hwKiUQmtxldYLAQSLbf5uGPK18jR99CdWfbrbBgDFYUcYSaPupfGgVkB1HUDmyj9Kn3OhW93KUSrybFVeEEY-ikn97xWdAqHyYnWq3CDxVOKxPP7wMfQGvkkU3VI/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="192" data-original-width="531" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_YmQ8WZxSMfQA2M_hwKiUQmtxldYLAQSLbf5uGPK18jR99CdWfbrbBgDFYUcYSaPupfGgVkB1HUDmyj9Kn3OhW93KUSrybFVeEEY-ikn97xWdAqHyYnWq3CDxVOKxPP7wMfQGvkkU3VI/w520-h188/image.png" width="520" /></a></div><br /></div></div></div></blockquote><p>וכמובן שברגיסטרי הרגיל אנחנו נראה את אותו הדבר:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7-Gedl_8L_bXJEMVtdDBYFhmwkcFw-CMOjBXMNCS35Uzb_8MlOHYn0V0mLvG-2DXUBYQxKXcLiHYr0FAR2VtyP-gGH2oWoc-vTzTL-qk9hpatEXJ4sP9i5FX1K4ygw1ls7XeLFSFNVmE/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="172" data-original-width="607" height="146" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7-Gedl_8L_bXJEMVtdDBYFhmwkcFw-CMOjBXMNCS35Uzb_8MlOHYn0V0mLvG-2DXUBYQxKXcLiHYr0FAR2VtyP-gGH2oWoc-vTzTL-qk9hpatEXJ4sP9i5FX1K4ygw1ls7XeLFSFNVmE/w516-h146/image.png" width="516" /></a></div><br /><p></p><p>3) <u>הוספת מפתחות וערכים חדשים</u></p><p>הוספת המפתחות היא קצת יותר מסובכת מאחר וקודם כל יש ליצור את המפתח (key) עצמו ורק לאחר מכן את הערך שלו וההגדרה של הערך:</p><p>לדוגמא: ניצור תחת Software את המפתח LeiderTech וניצור ערך מסוג REG_SZ ונרשום בו Lev1 וניצור עוד אחד בשם Lev2 וניצור ערך מסוג dWord וניתן לו את הסיפרה 1<br /><br />אז נתחיל ביצירת המפתח במקום הרצוח:</p><p style="text-align: left;">New-Item HKLM:\SOFTWARE\LeiderTech</p><p style="text-align: right;">יצרנו את המפתח הרצוי:</p><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGuw9Hsm4Qaf60C-7EbOIs1Z-CJxfi8cwD8Te3ohJj2INCr6OCmNtCpO4SxOwzzypNinxGtGOiSHgfO9TAdVX9nU1O34niAkfbb1T2RaxpcETciSays6huiZamuDj9sLKoYjbkAHWGTls/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="216" data-original-width="389" height="275" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGuw9Hsm4Qaf60C-7EbOIs1Z-CJxfi8cwD8Te3ohJj2INCr6OCmNtCpO4SxOwzzypNinxGtGOiSHgfO9TAdVX9nU1O34niAkfbb1T2RaxpcETciSays6huiZamuDj9sLKoYjbkAHWGTls/w494-h275/image.png" width="494" /></a></div><br /><br /></div>לאחר מכן ניצור את הערכים הרצויים בתוך המפתח:<div><br /></div><div><div style="text-align: left;">יצירת סטרינג - REG_SZ:</div><div style="text-align: left;"><br /></div><div style="text-align: left;">New-ItemProperty HKLM:\SOFTWARE\LeiderTech\ -Name Lev1</div><div style="text-align: left;"><br /></div><div style="text-align: left;">יצירת ערך Dword:<br /><br /></div><div style="text-align: left;">"New-ItemProperty HKLM:\SOFTWARE\LeiderTech\ -Name Lev2 -Value 1 -PropertyType "Dword</div><div style="text-align: left;"><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">התוצאה של כלל הפקודות ביחד:</div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgavMh6phl2NUpKEtf5VdMxxQZgU8IjFiXBbwRBuUT5de1z6GJti0aOKTFmH9wThWtOQKrxwQbo1pI9j7Z-KT0jW-LwgQ4ECbyll-KtZX4Qcz0TX09DgwPoQ_EoTItkeFNcCCj5TyAJzE/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="636" data-original-width="777" height="464" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgavMh6phl2NUpKEtf5VdMxxQZgU8IjFiXBbwRBuUT5de1z6GJti0aOKTFmH9wThWtOQKrxwQbo1pI9j7Z-KT0jW-LwgQ4ECbyll-KtZX4Qcz0TX09DgwPoQ_EoTItkeFNcCCj5TyAJzE/w566-h464/image.png" width="566" /></a></div><br />4. <u>שינוי של מפתחות וערכים ברגיסטרי (לא השם של הערך, אלה הערך עצמו)</u></div><div><u><br /></u></div><div>שינוים ב PowerShell מתבצעים בעזרת פקודות שמתחילות בפועל "set", מי שקרא את החלקים הראשונים של המדריך (במידה ולא - כדי מאוד לקרוא - ישלים לכם הרבה ידע !) יודע שניתן להריץ את get-command ולקבל את כלל הפקודות הרלוונטיות אז נריץ את הפקודה הקצת ארוכה הזאת:</div><div><br /><div style="text-align: left;">Get-Command -Noun Item,ItemProperty,ItemPropertyValue |Sort-Object -Property Name |select name</div><br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu7mpKAa-IEbVxxkDnW2k8JaIXRiAfEXASrvFks6dGL8E6RNWvHY7fMAj-iAPxqCJcS9fyMq0CwGjI451xiAwpUYO6LM5QQUunKpkz0dfogSM9o7g6VWCB3uT4o6wT1xIPk5k2Dw1dyAg/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="333" data-original-width="231" height="481" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu7mpKAa-IEbVxxkDnW2k8JaIXRiAfEXASrvFks6dGL8E6RNWvHY7fMAj-iAPxqCJcS9fyMq0CwGjI451xiAwpUYO6LM5QQUunKpkz0dfogSM9o7g6VWCB3uT4o6wT1xIPk5k2Dw1dyAg/w332-h481/image.png" width="332" /></a></div><br /><br />לצורך שינוי הערך, נשתמש בפקודה Set-ItemProperty ובעצם נבצע רק את השינוי המינורי שהוא ההתחלה של הפקודה מ New ל Set, ולאחר מכן נמחק את הערך Dword בסוף מאחר ואנחנו רוצים רק לשנות את הערך:</div><div><br /></div><div><div style="text-align: left;">Set-ItemProperty HKLM:\SOFTWARE\LeiderTech\ -Name Lev2 -Value 258</div><div style="text-align: left;"><br /></div><div style="text-align: right;">וכמובן התוצאה בהתאם :</div><div style="text-align: right;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiy_MyGFALdyyDiTDnxR2petGpd5YvLX50BEsWd6ARB7t4R-0KalOeLggLQbaiTrTjyXb_BDqN5GIGPwj-oh1ZIhADYsHjabl-VSV30PeDxtoRahRMWh-W-gjiJ7x766oWc0g7nGt6New/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="161" data-original-width="524" height="162" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiy_MyGFALdyyDiTDnxR2petGpd5YvLX50BEsWd6ARB7t4R-0KalOeLggLQbaiTrTjyXb_BDqN5GIGPwj-oh1ZIhADYsHjabl-VSV30PeDxtoRahRMWh-W-gjiJ7x766oWc0g7nGt6New/w528-h162/image.png" width="528" /></a></div><br /><br /></div><div style="text-align: right;"><br /></div><div style="text-align: left;"><br /></div><br /><p></p>
</div><div>5. <u>מחיקת מפתחות וערכים</u></div><div><u><br /></u></div><div>המחיקה היא גם כן באותה הצורה, רק לשנות את ההתחלה בהתאם למה שאתם צריכים - במקרה הזה נמשתמש ב Remove בשביל למחוק את כל המפתח LeiderTech מהרגיסטרי:</div><div><br /></div><div style="text-align: left;">Remove-Item HKLM:\SOFTWARE\LeiderTech\ -Force</div><div style="text-align: right;"><br /></div><div style="text-align: right;">הוספתי את הפרמטר Force בסוף עלמנת שלא יקפצו לי כל מיני "האם אתה בטוח?" למיניהם.</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br /></div><div style="text-align: right;">איך אפשר להפות את כל הפקודות האלה לסקריפט?<br />הינה כמה דוגמאות לסקריפט שאני משתמש בו לביצוע הגדרות באופיס, ברגע שאני מכין משתמש חדש עבור עובד ב"שרת טרמינל"</div><div style="text-align: right;"><br /></div><div style="text-align: right;"><br />בדקתי את זה על אופיס 2016 - תהנו:</div><div style="text-align: right;"><br /></div><div style="text-align: right;">(ניתן לעשות "העתק" - "הדבק" לתוך ה ISE ולהשתמש)</div><div style="text-align: right;"><div style="text-align: left;"><br /></div><div style="text-align: left;">## ==============================================</div><div style="text-align: left;"> office global Active X configuration##</div><div style="text-align: left;">## ==============================================</div><div style="text-align: left;"><br /></div><div style="text-align: left;">new-item "HKCU:\\Software\Microsoft\Office\Common\Security"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\Common\Security" -name UFIControls -value 1 -PropertyType "DWord"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\Common\Security" -name DisableAllActiveX -value 0 -PropertyType "DWord"</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">## ==============================================</div><div style="text-align: left;">## Excel configuration##</div><div style="text-align: left;">## ==============================================</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">#Enable macros in Excel##</div><div style="text-align: left;"><br /></div><div style="text-align: left;">Set-ItemProperty -Path "HKCU:\\Software\Microsoft\Office\16.0\Excel\Security" -Name "VBAWarnings" -value 1</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\excel\Security" -name AccessVBOM -value 1 -PropertyType "DWord"</div><div style="text-align: left;"><br /></div><div style="text-align: left;">#Trusted Locations in Excel:#</div><div style="text-align: left;"><br /></div><div style="text-align: left;">Set-ItemProperty -Path "HKCU:\\Software\Microsoft\Office\16.0\Excel\Security\Trusted Locations" -name "AllowNetworkLocations" -value 1</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">#Disabel protected view in Excel#</div><div style="text-align: right;"><br /></div><div style="text-align: left;">New-Item "HKCU:\\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView" -name DisableAttachmentsInPV -value 1 -PropertyType "DWord"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView" -name DisableInternetFilesInPV -value 1 -PropertyType "DWord"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView" -name DisableUnsafeLocationsInPV -value 1 -PropertyType "DWord"</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">## ==============================================#</div><div style="text-align: left;">## Word Configuration#</div><div style="text-align: left;">## ==============================================#</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">#Enable macros in Word#</div><div style="text-align: left;"><br /></div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\word\Security" -name AccessVBOM -value 1 -PropertyType "DWord"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\word\Security" -name VBAWarnings -value 1 -PropertyType "DWord"</div><div style="text-align: left;"><br /></div><div style="text-align: left;">#Trusted Locationsin word:#</div><div style="text-align: left;"><br /></div><div style="text-align: left;">Set-ItemProperty "HKCU:\\\Software\Microsoft\Office\16.0\Word\Security\Trusted Locations" -name "AllowNetworkLocations" -value 1</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;">#Disable protected View in Word#</div><div style="text-align: left;"><br /></div><div style="text-align: left;">New-Item "HKCU:\\Software\Microsoft\Office\16.0\word\Security\ProtectedView"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\word\Security\ProtectedView" -name DisableAttachmentsInPV -value 1 -PropertyType "DWord"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\word\Security\ProtectedView" -name DisableInternetFilesInPV -value 1 -PropertyType "DWord"</div><div style="text-align: left;">New-ItemProperty "HKCU:\\Software\Microsoft\Office\16.0\word\Security\ProtectedView" -name DisableUnsafeLocationsInPV -value 1 -PropertyType "DWord"</div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: left;"><br /></div><div style="text-align: right;">כמו תמיד, לכל שאלה המייל שלי levl@leidertech.co.il</div><div style="text-align: right;"><br /></div><div style="text-align: right;">ומדריך מצולם:</div><div style="text-align: right;"><br /></div></div><div style="text-align: right;"><br /></div>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/BDwrY9ENjOU" width="560"></iframe><div><br /></div><div><br /></div><div>לחלקים הקודמים:</div><div><br /></div><div><div dir="rtl" trbidi="on">לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div dir="rtl" trbidi="on">לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div></div><div><br /></div>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-63059273185234811422020-06-19T11:29:00.009+03:002021-01-23T16:11:07.856+02:00מדריך ל PowerShell בעברית חלק 5 - קבלת קלט ממשתמש והצגתו ב PowerShell<div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyEfpVvKWndMyqqTQy99qgKNwle9RBbNooanqZZYyGgOjj5RZGOj2dfXIdNw-3881XzizXihCQJh_tKFkGTEnvAj7w_NlI8S334NJ3dyJKZSK537yAk1rNnrj1dKeU1bGyOwk4pIqwUEE/s281/powershell.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="248" data-original-width="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyEfpVvKWndMyqqTQy99qgKNwle9RBbNooanqZZYyGgOjj5RZGOj2dfXIdNw-3881XzizXihCQJh_tKFkGTEnvAj7w_NlI8S334NJ3dyJKZSK537yAk1rNnrj1dKeU1bGyOwk4pIqwUEE/s0/powershell.PNG" /></a></div></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><b><u>לפני קריאת המדריך חובה לעבור על החלקים הקודמים:</u></b></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on">לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">במדריך זה נלמד לעבוד עם שתי פקודות שיודעות לקבל קלט מהמשתמש ולהציג פלט שהוגדר על ידי המשתמש.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">1) Read-host - קבלת קלט מהמשתמש - חלון קובץ שמבקש מידע.</div><div dir="rtl" style="text-align: right;" trbidi="on">2) Write-host - הצגת מידע מותאם, טקסט כזה או אחר, כגון הודעות, הוראות, ניתן גם בצבעים.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><div dir="rtl" trbidi="on"><u><b>ראשית - הסבר על הפקודה שנשתמש בה לצורך קבלת קלט מהמשתמש - Read-Host.</b></u></div><div><u><b><br /></b></u></div></div><div dir="rtl" style="text-align: right;" trbidi="on">אז מתי אנחנו בעצם נרצה לעבוד עם קלט כלשהו ממשתמש כזה או אחר? דבר ראשון ברגע שנרצה להכניס בכל פעם שם משתמש אחר, או אולי שם מחשב אחר, או בעצם כל דבר שלא יהיה זהה בכל פעם, הדוגמא הכי טובה לזה, היא עבודה עם סקריפט קצר שבודק תקשורת, במקום שנכתוב כל פעם ping -some ip adress- -t אפשר פשוט להגיד ל PowerShell שיבקש מאיתנו את כתובת המחשב בכל פעם שנריץ את הסקריפט, הרבה יותר נוח והרבה יותר פרודוקטיבי.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">בתור דוגמא אני אצור את הסקריפט הקצר שהצעתי בפיסקה למעלה - סקריפט לבדיקת פינג.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">הפקודה ב PowerShell שיודעת לעבוד עם קלט מהמשתמש היא פקודה שנקראת read-host, פקודה מאוד פשוטה, במידה ותריצו עליה help תקבלו כמה שורות של הסבר</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">פתחו PowerShell והריצו: help Read-Host -ShowWindow.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">הפקודה עובדת בצורה מאוד פשוטה ומאוד ברורה - כשמה כן היא "קרא - מארח" זאת אומרת, קבל את מה שכתב את המארח, במקרה שלנו זה המשתמש או כל מידע שאנחנו מחליטים לתת לסקריפט.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">אם סתם נקיש את הפקודה היא פשוט תחזיר את מה שנכתוב לה, אבל אם נרצה להשתמש בה, אנחנו נצטרך להכניס אותה לתוך משתנה, על מנת שנוכל להשתמש במידע שהיא מחזיקה בתוכו.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">בתוך הדוגמא של הסקריפט, אתם תבינו על מה אני מדבר.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">נכין סקריפט מאוד פשוט לביצוע פינג:</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on">#הוספתי את ה <br />#cls<br />#בשביל שיופי לי רק הסקריפט ולא הנתיב גם כן</div><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on">#נסו עם הפקודה ובלי הפקודה ותראו את ההבדל.</div><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on">cls<br />$pc = read-host "What is the IP address of the computer?"</div><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on"><br /></div><div dir="rtl" style="direction: ltr; text-align: left;" trbidi="on">ping $pc</div><div style="text-align: right;" trbidi="on">במידה ונריץ את הסקריפט, נקבל דבר כזה:</div><div style="text-align: right;" trbidi="on"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Ln6w7MzbOe_vrRBw9wXMYpbumUBwWp-c_aVzxdSxfZc4tlk-gJKQQxLKfLR3mgIlA_G-YULhFhDQv_5OtV9wUL0I6T7PUu5ripNn5wLP72-47Qi2qTRNwwUceVnkb70xLn5Mz-fcvjc/s399/powershell.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="283" data-original-width="399" height="355" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Ln6w7MzbOe_vrRBw9wXMYpbumUBwWp-c_aVzxdSxfZc4tlk-gJKQQxLKfLR3mgIlA_G-YULhFhDQv_5OtV9wUL0I6T7PUu5ripNn5wLP72-47Qi2qTRNwwUceVnkb70xLn5Mz-fcvjc/w500-h355/powershell.PNG" width="500" /></a></div><div style="text-align: center;" trbidi="on"><br /></div><div style="text-align: center;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">ניתן לשחק עם הפקודה ועם המשתנים ולצרף כמה וכמה "שאלות" ששאלנו את המשתמש ולאחד לתוך פלט של פקודה אחת,</div><div style="text-align: right;" trbidi="on">ניקח את המאכל האהוב עלי שהוא המבורגרים (אני מתנצל אם אתם טבעונים..לא מתכוון לפגוע באף אחד) ונבקש מ PowerShell לשאול אותי כמה המבורגרים אכלתי היום ואיפה אכלתי אותם?</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">סקריפט לדוגמא:</div><div dir="ltr" style="text-align: left;" trbidi="on"><div trbidi="on">cls</div><div trbidi="on">$state = Read-Host "Where did you eat Hamburgers?"</div><div trbidi="on">$howmuch = Read-Host "How much hamburgers did you eat?"</div><div trbidi="on"><br /></div><div trbidi="on">write-host " you were in $state and you eat $howmuch hamburgers"</div></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">במקרה הזה, פקודת read-host היא בתוך משתנה state$ וגם בתוך משתנה howmuch$ ואז כשאנחנו מאחדים את הכל לתוך הפקודה write-host (שהיא בעצם ההפך מהפקודה read-host - מוציאה פלט למסך המחשב שלנו) אנחנו מקבלים את הפלט כש PowerShell מאחד לנו את כל המשתנים ביחד.</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on"><b><u>שנית - הסבר על הפקודה שנשתמש בה לצורך הצגת פלט על המסך Write-host.</u></b></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">הפקודה הזאת לא יודעת לעשות כלום חוץ מלהציג הודעות וטקסט, גם אם נגיד נציב אותה בתור משתמש, עדיין במידה ונבצע בדיקה, לא נקבל כלום, לצורך דוגמא:</div><div style="text-align: right;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">$shnitzel = write-host "I love LeiderTech.co.il"</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">אם נריץ את זה ולאחר מכן נריץ את המשתנה עלידי הקשת shnitzel$ ו ENTER, לא נקבל כלום, כי המשתנה ריק, לעומת זאת אם נעשה את אותו הדבר עם read-host אז נקבל שבתוך המשתנה יש את read-host:</div><div style="text-align: right;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">$shnitzel = read-host "Do you like LeiderTech.co.il?"</div><div dir="ltr" style="text-align: right;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><div dir="rtl" style="text-align: right;">במידה ועכשיו תקשיו את shnitzel$ ותקישו ENTER, תקבלו שבתוך המשתנה שזה בעצם מה שהצבנו במשתנה "שניצל"</div><span style="text-align: left;"><div style="text-align: right;"><br /></div><div style="text-align: left;">read-host "Do you like LeiderTech.co.il?"</div><div style="text-align: left;"><br /></div><div dir="rtl" style="text-align: right;">המשמעות היא שניתן להשתמש עכשיו במשתנה לכל מטרה וניתן לשים אותו בכל מקום בסקריפט אך ורק בתור משתנה.</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">אני משתמש ב write-host לרוב בסקריפטים שלי כשאני רוצה להציג כותרת כמו "This script made by Lev" או משהו בסגנון.</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;">ניתן גם להוסיף לטקסט צבעים על ידי שימוש בפרמטרים "Background Color" ו "Foregroundcolor" ולאחר מכן בחירת צבע, החלק הכי חשוב כאן, זאת הגמישות שיש ל PowerShell מבחינת המיקום של הפרמטרים, גם אם תרשמו אותם לפני הטקסט וגם אם תרשמו אותם אחרי הטקסט, זה עדיין יעבוד כמו שרואים כאן בתצלום המסך בסקריפט הקטן שמספר אודות כמות ההמבורגרים שאכלתי במוסקבה :)</div><div dir="rtl" style="text-align: right;"><br /></div><div dir="rtl" style="text-align: right;"><br /></div><div style="text-align: left;"><div>cls</div><div>$state = Read-Host "Where did you eat Hamburgers?"</div><div>$howmuch = Read-Host "How much hamburgers did you eat?"</div><div><br /></div><div>#משתנה לפני הטקסט</div><div>write-host -ForegroundColor DarkCyan -BackgroundColor White "you were in $state and you eat $howmuch hamburgers"</div><div class="separator" style="clear: both; text-align: center;"><br /></div><div><br /></div><div><br /></div><div>#משתנה אחרי הטקסט</div><div>write-host "you were in $state and you eat $howmuch hamburgers" -ForegroundColor DarkCyan -BackgroundColor White</div><div><br /></div><div><br /></div><div dir="rtl" style="text-align: right;">התוצאה:</div><div dir="rtl" style="text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUPUUtYbVZ9dWe-3lwWB-g29p_DbkgpTDVdvQYPBoPsF6gMIxZUuBS2jKCsViggi3dLgAH6j__mQebIFO_7ccHh1ghEEzWY1zD3jZi4diBJL4MN-xx-9IRw4g5_Zk69Xl-V3EWGG7qpsY/s842/powershell1.PNG" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="364" data-original-width="842" height="216" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUPUUtYbVZ9dWe-3lwWB-g29p_DbkgpTDVdvQYPBoPsF6gMIxZUuBS2jKCsViggi3dLgAH6j__mQebIFO_7ccHh1ghEEzWY1zD3jZi4diBJL4MN-xx-9IRw4g5_Zk69Xl-V3EWGG7qpsY/w500-h216/powershell1.PNG" width="500" /></a></div><div dir="rtl" style="text-align: right;"></div></div><div dir="rtl" style="text-align: right;"><br /></div></span></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">אם תשימו לב לפלט של הפקודה, תראו שאין מרווח בין השורה הראשונה לבין השניה, וזה לא משנה כמה רווחים תעשו בין שורות הקוד, עדיין בתצוגה זה יופיע אחד מתחת לשני, אני אישית אוהב סדר, אז אני אוהב לעשות רווחים, אז איך עושים רווחים?</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">רווחים אנחנו נייצר עלידי שימוש ב "Escape character" (תו יציאה\בריחה), כמו שלמדנו באחד המדריכים (כרגע לא זוכר בעל פה, באיזה מהחלקים) אנחנו נשתמש בגרש מיוחד שנמצא במקש ה"טילדה" לרוב מצד שמאל מעל ה-TAB במקלדת והאות "n" (המשמעות - חדש\חדשה):</div><div style="text-align: right;" trbidi="on"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi26pIs-HrwYRaB3U7AOXXX9Ebxi16akqkomTSly0TPT5GfPDMauIADoTGNJrzkyodWnFIgxVbGM_feHH6busbW-1st5D1sPRP-83Q1eBzn-KldHDKdTKgEoQrarm7TdpUt7_Dp0F4cxFA/s255/thilda.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="242" data-original-width="255" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi26pIs-HrwYRaB3U7AOXXX9Ebxi16akqkomTSly0TPT5GfPDMauIADoTGNJrzkyodWnFIgxVbGM_feHH6busbW-1st5D1sPRP-83Q1eBzn-KldHDKdTKgEoQrarm7TdpUt7_Dp0F4cxFA/" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: right;">ואז הסקריפט שלנו יראה ככה:</div><div class="separator" style="clear: both; text-align: right;"><br /></div><div class="separator" dir="ltr" style="clear: both; text-align: left;"><div class="separator" dir="ltr" style="clear: both;">cls</div><div class="separator" dir="ltr" style="clear: both;">$state = Read-Host "Where did you eat Hamburgers?"</div><div class="separator" dir="ltr" style="clear: both;">$howmuch = Read-Host "How much hamburgers did you eat?"</div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="ltr" style="clear: both;">#משתנה לפני הטקסט</div><div class="separator" dir="ltr" style="clear: both;">write-host -ForegroundColor DarkCyan -BackgroundColor White "you were in $state and you eat $howmuch hamburgers"</div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="ltr" style="clear: both;">#ביצוע רווח בין שורה לשורה</div><div class="separator" dir="ltr" style="clear: both;">write-host "`n"</div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="ltr" style="clear: both;">#משתנה אחרי הטקסט</div><div class="separator" dir="ltr" style="clear: both;">write-host "you were in $state and you eat $howmuch hamburgers" -ForegroundColor DarkCyan -BackgroundColor White</div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="ltr" style="clear: both;"><br /></div><div class="separator" dir="rtl" style="clear: both; text-align: right;">התוצאה:</div><div class="separator" dir="rtl" style="clear: both; text-align: right;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTZs72quRxGoKKLXYEvsdnh1a7ZAl6FF9CCFXKlhRh5_MNuuRzL28Z8FSRfBtT8vGPxUYYyaFAANFWqsPieMAVD9JZr9LUKwvrTFSu1oo1mdLHE8ZEhPHQQoCq7B1DyVxebVlTvvzHSOg/s882/powershell2.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="319" data-original-width="882" height="181" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTZs72quRxGoKKLXYEvsdnh1a7ZAl6FF9CCFXKlhRh5_MNuuRzL28Z8FSRfBtT8vGPxUYYyaFAANFWqsPieMAVD9JZr9LUKwvrTFSu1oo1mdLHE8ZEhPHQQoCq7B1DyVxebVlTvvzHSOg/w500-h181/powershell2.PNG" width="500" /></a></div><div class="separator" dir="rtl" style="clear: both; text-align: right;"><br /></div></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">איך בעצם ניתן לדעת אילו צבעים יש? אז ראשית ברגע שאתם כותבים את הקוד ב-ISE, אתם תקבלו את הרשימה של כל הצבעים שעומדים לרשותכם, דבר שני, ניתן להריץ את help write-host ותקבלו את הרשימה של הצבעים, דבר שלישי, אני אכתוב לכם את הצבעים כאן:</div><div style="text-align: right;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><div dir="ltr" trbidi="on">Black</div><div dir="ltr" trbidi="on">DarkBlue</div><div dir="ltr" trbidi="on">DarkGreen</div><div dir="ltr" trbidi="on">DarkCyan</div><div dir="ltr" trbidi="on">DarkRed</div><div dir="ltr" trbidi="on">DarkMagenta</div><div dir="ltr" trbidi="on">DarkYellow</div><div dir="ltr" trbidi="on">Gray</div><div dir="ltr" trbidi="on">DarkGray</div><div dir="ltr" trbidi="on">Blue</div><div dir="ltr" trbidi="on">Green</div><div dir="ltr" trbidi="on">Cyan</div><div dir="ltr" trbidi="on">Red</div><div dir="ltr" trbidi="on">Magenta</div><div dir="ltr" trbidi="on">Yellow</div><div dir="ltr" trbidi="on">White</div><div dir="ltr" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">בנוסף, ניתן לרשום טקסט בשורה חדשה בצורה דומה, על ידי שימוש באותו ה "Escape character", בעזרת הצבתו בתחילת המילה\משפט שנרצה להציג בשורה חדשה כמו בדוגמא הבאה:</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">בדוגמא זאת, שמתי את ה "n`" ישר בצמוד למילה שאחרי הפסיק, בשביל שהחלק השני של המשפט יוצג בשורה הבאה ללא רווחים (שימו לב למה שקורה אחרי הפסיק):</div><div style="text-align: right;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">write-host -ForegroundColor DarkCyan -BackgroundColor <br />White "you were in $state ,<b style="text-decoration-line: underline;"><font color="#d52c1f">`n</font></b>and you eat $howmuch hamburgers"</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">בתוך סקריפט זה יראה ככה:</div><div style="text-align: right;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><div dir="ltr" trbidi="on">cls</div><div dir="ltr" trbidi="on">$state = Read-Host "Where did you eat Hamburgers?"</div><div dir="ltr" trbidi="on">$howmuch = Read-Host "How much hamburgers did you eat?"</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on">#שורה חדשה</div><div dir="ltr" trbidi="on">write-host -ForegroundColor DarkCyan -BackgroundColor <br />White "you were in $state ,<font color="#d52c1f"><b><u>`n</u></b></font>and you eat $howmuch hamburgers"</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">התוצאה:</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy99hz0sZE3fLd0DQ8FTV_PmI7kq1S_69hR2yRObB3WQL-aSnwPzVDnyIV4Kygs6ZS9GGwwiMiWIOjuWX7ne0xDQcmXrRuto73CmnDQXv4ZL9QSVIMfUc9UPVSBxs4082Ad_CLXNH4ni4/s853/PowerShell6.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="336" data-original-width="853" height="198" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy99hz0sZE3fLd0DQ8FTV_PmI7kq1S_69hR2yRObB3WQL-aSnwPzVDnyIV4Kygs6ZS9GGwwiMiWIOjuWX7ne0xDQcmXrRuto73CmnDQXv4ZL9QSVIMfUc9UPVSBxs4082Ad_CLXNH4ni4/w500-h198/PowerShell6.PNG" width="500" /></a></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on"><u>לידע כללי</u>:<br />ישנה גם פקודה שנקראת write-output, שהיא יותר מיועדת לשימוש בתוך הסקריפט. בעזרתה ניתן להציג "תוצאה" של הסקריפט שלכם או ליצא את הנתונים הסופיים של הסקריפט שלכם לקובץ מסויים, אין לה אפשרות להוסיף צבעים או רקעים בצבעים כמו ב Write-host.</div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div></div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">לכל שאלה המייל שלי: levl@LeiderTech.co.il.</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on">לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div style="text-align: right;" trbidi="on">לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div><div style="text-align: right;" trbidi="on">מדריך מצולם:</div><div style="text-align: right;" trbidi="on"><br /></div><div style="text-align: right;" trbidi="on"><br /></div>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/ZhZlSFWs4OE" width="560"></iframe>Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com7tag:blogger.com,1999:blog-8431489733818004346.post-78748550251393565382020-04-12T16:28:00.004+03:002020-06-19T11:35:31.104+03:00התחברות לאופיס 365 עם PowerShell<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf4fty_3oWvB8wO6oTSGqopyCtW1Z4PK_0QyDtZ4y9RKlXkobydmewKMkRIH03AljJSuwfrDXvhFibTwGLZW23bYyhJUFOJ7rPb37GMyhNSrAN0FSg9QbT2QtxVy0oeYWGOfYugRaAWd0/s1600/Ofc365_rgb_Orng166.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="555" data-original-width="1600" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf4fty_3oWvB8wO6oTSGqopyCtW1Z4PK_0QyDtZ4y9RKlXkobydmewKMkRIH03AljJSuwfrDXvhFibTwGLZW23bYyhJUFOJ7rPb37GMyhNSrAN0FSg9QbT2QtxVy0oeYWGOfYugRaAWd0/s400/Ofc365_rgb_Orng166.png" width="400" /></a></div>
<br />
במדריך זה נלמד כיצד להתחבר לאופיס 365 עם PowerShell, לצורך יעול משימות ועבודה יומיומית עם PowerShell, אני לא אכנס ל"למה צריך לעבור לאופיס 365" או "מה היתרונות של אופיס 365" כי אני מאמין שאם אתם כאן, זה אומר שאתם כבר הגעתם למסקנה למה כדי לכם לעבור לאופיס 365, ואתם רוצים להתחיל ליעל לעצמכם את העבודה.<br />
<br />
באופיס 365, קיימים כמה מודולים ביניהם Share Point, אנחנו נתמקד בנושא ניהול המיילים.<br />
<br />
לצורך התחברות לאופיס 365 יש צורך בביצוע כמה פעולות:<br />
<br />
1) <span style="background-color: white; color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">קודם כל אם אתם על windows 7\8\8.1 ביצעו הורדה של של גירסת ה PowerShell האחרונה : <a href="https://www.microsoft.com/en-us/download/details.aspx?id=54616" target="_blank">כאן</a></span><br />
<br />
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
2) פתחו את PowerShell עם משתמש אדמיניסטרטור (לא משנה אם זה ISE או הרגיל) והריצו:</div>
<div style="background-color: white; color: #333333; direction: ltr; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
Install-Module -Name AzureAD</div>
<div style="background-color: white; color: #333333; direction: ltr; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
3) לאחר מכן התקינו את Microsoft Online Services Sign-In Assistant for IT Professionals (מסיבה לא מובנת ניתן להתקין את זה אך ורק על מערכות 64 ביט): <a href="https://www.microsoft.com/en-us/download/details.aspx?id=41950" style="color: #6699cc; text-decoration-line: none;" target="_blank">כאן</a></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
4) לאחר שביצעתם התקנה - פתחו את PowerShell בתור מנהל (לא משנה אם ISE או הרגיל) והריצו:</div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
Install-Module MSOnline </div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
* במהלך ההתקנה תצטרכו לענות על שאלות - אני מאמין שתאשרו את הכל.</div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
לאחר שביצעתם את כל השלבים הנ"ל, פתחו PowerShell והריצו את הפקודות הבאות:</div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
(<b><u>שימו לב</u></b>:<b> </b><span style="font-size: 14.85px;">לאחר שתריצו את הסקריפט תקבלו חלון שבו תתבקשו להכניס הרשאות - אלו הן הרשאות לחיבור עם חשבון מנהל ה 365 שלכם ללא דומיין וללא שום דבר</span></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
שם משתמש (לדוגמא) :lev_admin@leidertech.co.il</div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
סיסמא: ToLongPassw0rd2Remmber!</div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="background-color: white; color: #333333; direction: rtl; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
לאחר מכן לחצו אינטר וכל שאר הדברים יתבצעו לבד.)</div>
<div style="background-color: white; direction: rtl;">
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Set-ExecutionPolicy Unrestricted</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">$creds = Get-Credential</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ `</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"> -Credential $creds -Authentication Basic -AllowRedirection</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Install-Module MSOnline#</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Import-Module MSOnline</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Connect-MsolService -Credential $creds</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Import-PSSession $Session</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Remove-PSSession $Session#</span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: right;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">לאחר ביצוע השלב הראשון והרצת הסקריפהראשוני, אין צורך לבצע את הפקודה <b>install-module MSOnline</b> מאחר והמודול כבר מותקן, לכן הסקריפט יראה טיפה שונה:</span></span></div>
<div style="direction: rtl; text-align: right;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: right;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">(אני לא מוחק את כל הפקודות בשביל לא לשכוח, אז אני שם "סולמית" לפני הפקודה שאני לא רוצה שתרוץ, אלה סתם תהיה שם כ"הערה")</span></span></div>
<div style="direction: rtl; text-align: right;">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Set-ExecutionPolicy Unrestricted</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">$creds = Get-Credential</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ `</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"> -Credential $creds -Authentication Basic -AllowRedirection</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">#Install-Module MSOnline - סימון "סולמית" לפני הפקודה -מסמן שזאת היא הערה</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Import-Module MSOnline</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Connect-MsolService -Credential $creds</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">Import-PSSession $Session</span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div dir="ltr">
<span style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif;"><span style="font-size: 14.85px;">#Remove-PSSession $Session</span></span></div>
<div style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px;">
<br /></div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
<b><u> שאלה :</u></b> למה סימנתי את <span style="font-size: 14.85px; text-align: left;">Remove-PSSession $Session </span>עם "סולמית"?</div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
<br /></div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
אז ככה, במידה וזאת פעם ראשונה שלכם שאתם עובדים עם powershell על שרת מרוחק (במקרה הזה, שרתי מיקרוסופט שנמצאים "בענן") אני מאמין שיש פקודות שלא מוכרות לכם, כמו הפקודה הנ"ל, שמטרתה היא "לסגור" הסשן אם השרת המרוחק (או במקרה הזה השרת של מיקרוסופט), ולכן במידה והיא לא תהיה מסומנת עם "סולמית" מה שיקרה, במידה ותבצעו "העתק הדבק" לסקריפט, בעצם בסיום כל הסקריפט, המערכת פשוט תתנתק - ככה שזה הוא בעצם אמצעי זהירות, לאחר סיום העבודה, הריצו את הפקודה ללא הסולמית, והמערכת תתנתק מהמחשב בסיום העבודה.</div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
<br />
<br />
במידה וזאת פעם ראשונה שלכם ואתם מחפשים פקודות לעבודה עם אופיס 365 ישנו פוסט שבו צירפתי פקודות שימושיות שאני מעדכן מפעם לפעם: פקודות שימושיות ל PowerShell: <a href="http://www.leidertech.co.il/2019/08/PowerShell-commands-for-every-day.html" target="_blank">כאן</a><br />
<br />
<br style="font-size: 14.85px;" />
<u>לידע כללי:</u><br />
<br />
הסקריפט בנוי מ 2 חלקים - האחד הוא התחברות לשרת Exchange online (שרת הדואר מאחורי תיבות ה 365 בענן) והחלק השני הוא התחברות לשירותי האופיס 365 ( מה שמופיע בתור MSOL - Microsoft online).<br />
<br />
אכן אפשר לעבוד רק עם התחברות ל Msonline אבל עדיף להשתמש גם בפקודה הארוכה אשר מחברת אותנו גם לשרת ה Exchange online - למה?<br /><br />מאחר וישנן 2 סוגי פקודות:<br />
1) פקודות של אקסצ'יינג' - לדוגמא: get-mailbox -identity lev<br />
2) פקודות של Office 365 - לדוגמא:Get-MsolUser -SearchString lev<br />
<br />
על מנת שנוכל להשתמשת גם באלה וגם באלה, אני מעדיף להתחבר ישר גם לשירות ה Exchange וגם לשירות האופיס 365.<br />
<br />
(עם הזמן תבינו עד כמה שזה נוח :) )<br />
<br /></div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
<br />
<br />
במידה וזאת הפעם הראשונה שלכם עם PowerShell בכלל, כדי שתעברו על ארבעת המדריכים<br />
למתחילים אודות PowerShell בעברית:<br />
<br />
1) חלק ראשון : <a href="https://www.leidertech.co.il/2018/03/Hebrew-PowerShell-Guid-From-Basic-First-Part.html" target="_blank">מדריך PowerShell מאיפה מתחילים?</a><br />
<br />
2) חלק שני: <a href="https://www.leidertech.co.il/2018/11/Hebrew-PowerShell-Guid-From-Basic-Second-Part.html" target="_blank"> מיונים, מודלים ו-Alias.</a><br />
<br />
3) חלק שלישי: <a href="https://www.leidertech.co.il/2019/08/Hebrew-PowerShell-Guid-From-Basic-third-Part.html" target="_blank">הרחבה של סינונים ומיונים.</a><br />
<br style="color: black; font-family: "times new roman"; font-size: medium;" />
4) חלק רביעי:<span style="color: black; font-family: "times new roman"; font-size: small;"> </span><a href="https://www.leidertech.co.il/2019/08/Hebrew-PowerShell-Guid-From-Basic-third-Part.html" style="font-family: "times new roman"; font-size: medium;" target="_blank">לולאת foreach והפקודה foreach-object</a></div><div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;"><br /></div><div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">5) חלק חמישי: <a href="https://www.leidertech.co.il/2020/06/Hebrew-PowerShell-Guid-From-Basic-Fifth-Part.html" target="_blank">קבלת קלט מהמשתמש</a></div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
<br /></div>
<div dir="rtl" style="color: #333333; font-family: arial, tahoma, helvetica, freesans, sans-serif; font-size: 14.85px; text-align: right;">
<br />
<br />
<span style="font-size: 14.85px;"><b><u>(בשלב הראשון אני לא מעלה מדריך מצולם מאחר ומדובר בתהליך דיי פשוט ואיני רואה צורך בביצוע הדרכה מצולמת אולם במידה ואראה דרישה מספיקה עלידי תגובות, אעלה מדריך מצולם).</u></b></span><br />
<span style="font-size: 14.85px;"><b><u><br /></u></b></span>
<span style="font-size: 14.85px;">לכל שאלה המייל שלי: levl@LeiderTech.co.il</span></div>
</div>
</div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com2tag:blogger.com,1999:blog-8431489733818004346.post-41079511090513466332020-04-08T11:11:00.000+03:002020-04-08T11:11:22.863+03:00פתרון לתקלה: קבצים מצורפים באאוטלוק מופיעים בג'יבריש<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSMZIgNlpgs3vhdOGCAQ9EQtRKvRiasKWIxsngOa29o_tIhrao3gs-iSE7W63d4RbrD3rpzmdmP3Iea5ZNSQgfCEtertjfT_K9B8gGKmqt_Ub4A2ITxT4HHbQZ2HjdcPDUoJU5JaVX9t8/s1600/icons8-microsoft-outlook-150.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="150" data-original-width="150" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSMZIgNlpgs3vhdOGCAQ9EQtRKvRiasKWIxsngOa29o_tIhrao3gs-iSE7W63d4RbrD3rpzmdmP3Iea5ZNSQgfCEtertjfT_K9B8gGKmqt_Ub4A2ITxT4HHbQZ2HjdcPDUoJU5JaVX9t8/s1600/icons8-microsoft-outlook-150.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
אני מאמין שהמון ממכם משתמשים באאוטלוק או לפחות הלקוחות של חלק ממכם משתמשים באאוטלוק, ומפעם לפעם אנחנו נתקלים בתקלות הזויות לגמרי.<br />
<br />
בפוסט קצר זה, אני אציג לכם פתרון לתקלה מהסוג ההזוי - רמת אלוהים.<br />
<br />
במידה ואתם פותחים מייל שמור, נושא המייל, והקבצים השמורים פתאום הופכים להיות בג'יבריש כמו בדוגמא הזאת:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDYm4nFS4WLET09Wd60kivdwQPh1W8wvEzveqtXQhK_V0JI3NIPox3UKmbCRP_HX58sgKwN1gjXuJUajtjOlbwgfbDJT2wmf5vTZPAw8FWw9bArDtf_sfhZbDboq6KfzWJnjAO2n9ayFY/s1600/%25D7%259E%25D7%2599%25D7%2599%25D7%259C%25D7%2599%25D7%259D.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="306" data-original-width="627" height="195" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDYm4nFS4WLET09Wd60kivdwQPh1W8wvEzveqtXQhK_V0JI3NIPox3UKmbCRP_HX58sgKwN1gjXuJUajtjOlbwgfbDJT2wmf5vTZPAw8FWw9bArDtf_sfhZbDboq6KfzWJnjAO2n9ayFY/s400/%25D7%259E%25D7%2599%25D7%2599%25D7%259C%25D7%2599%25D7%259D.JPG" width="400" /></a></div>
<br />
הפתרון: לשנות את ה"מיקום" של מערכת ההפעלה שלכם ל"עברית"(מה שאתם מכירים בתור Current system locale)<br />
<br />
למי שלא זוכר, מדובר בשינוי בתוך Regional Settings (כך זה נראה בחלונות 7)<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhz0rkQaPih_nbsMVwEsDfa4E57pQtLr2RBpv4G1wVFPnZaj3DEw9pm418mWZCGwnXpi-R9gbTQZI-5ahlLb9pxBBToUtKl2m07xr3pNhXukN4_BQ66b8S7qFUIPmGn9ycYrYEv3qaeI-E/s1600/Regional+settings.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="273" data-original-width="352" height="310" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhz0rkQaPih_nbsMVwEsDfa4E57pQtLr2RBpv4G1wVFPnZaj3DEw9pm418mWZCGwnXpi-R9gbTQZI-5ahlLb9pxBBToUtKl2m07xr3pNhXukN4_BQ66b8S7qFUIPmGn9ycYrYEv3qaeI-E/s400/Regional+settings.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Windows 7<br />
<br />
<br />
<br />
<div style="text-align: right;">
<span style="font-size: 12.8px;"><br /></span></div>
</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitfjJfFz15LRAbbKyGtAyWESXfz-oLZK-KIjASX-BRMUIvTM_Bla4hYlzKVgsr3lPmpmCJ29VQyMUPc1fM8g01m_iE0NxUNiIlgKEpF0_NETzKQtQUysq3mooICASwx0U0y-5oZ-FhcjQ/s1600/Capture.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="552" data-original-width="491" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitfjJfFz15LRAbbKyGtAyWESXfz-oLZK-KIjASX-BRMUIvTM_Bla4hYlzKVgsr3lPmpmCJ29VQyMUPc1fM8g01m_iE0NxUNiIlgKEpF0_NETzKQtQUysq3mooICASwx0U0y-5oZ-FhcjQ/s400/Capture.PNG" width="355" /></a></td></tr>
<tr><td class="tr-caption" style="font-size: 12.8px;">Windows 10</td></tr>
</tbody></table>
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
לצורך ביצוע ההגדרה:</div>
<div class="separator" style="clear: both; text-align: right;">
1) בצעו חיפוש של intl.cpl</div>
<div class="separator" style="clear: both; text-align: right;">
2) לחצו על הלשונית Administrative</div>
<div class="separator" style="clear: both; text-align: right;">
3) לחצו על Change system locale</div>
<div class="separator" style="clear: both; text-align: right;">
4) בצעו חיפוש של Hebrew</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnPOUYdWBIodntAI2ITV_FEScyhk-EWION29bzSuNS9bUFZs5uwh61NOLEquuBa-RX2TillmgDHpjb2DgA1TNq48H56Of0RljEjBwD3Fz8mnF2r4osvuIFCnBBJ0lqARoJsnP2sd2zAR0/s1600/Capture1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="234" data-original-width="442" height="211" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnPOUYdWBIodntAI2ITV_FEScyhk-EWION29bzSuNS9bUFZs5uwh61NOLEquuBa-RX2TillmgDHpjb2DgA1TNq48H56Of0RljEjBwD3Fz8mnF2r4osvuIFCnBBJ0lqARoJsnP2sd2zAR0/s400/Capture1.PNG" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<br />
5) לחצו OK - במידה ותצטרכו לעשות הפעלה מחדש למחשב - בצעו.<br />
<b style="text-align: center;"><u><br /></u></b>
<b style="text-align: center;"><u>¿? זכרו לשמור את העבודה שלכם לפני כן !¿?</u></b><br />
<b style="text-align: center;"><u><br /></u></b>
<b style="text-align: center;"><u><br /></u></b>
<br />
<div style="text-align: right;">
במידה ואין צורך לעשות הפעלה מחדש למחשב, ניתן לסגור את ה- Outlook ולפתוח מחדש.</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
התקלה אמורה להסתדר.</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
לכל שאלה - המייל שלי levl@LeiderTech.co.il</div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com1tag:blogger.com,1999:blog-8431489733818004346.post-22997486927510090442020-03-23T15:18:00.000+02:002020-03-23T15:18:09.148+02:00פתרון לתקלה: אין אפשרות לשנות שפת ממשק של גוגל כרום לאנגלית<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhvMxTdA8lkmR5_jQPbYXGkZSQNlf2a-6wbf_mblUg2hToj52RR3ESxL43jext5J3kOXEcf_IQ_g3DI97RF5nAkXaytswiZDOtHcgnURgNbp7XFcJKr6yIZMEhUa6sGkl36g0qS3w-0yk/s1600/Tatice-Browsers-Google-Chrome.ico" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhvMxTdA8lkmR5_jQPbYXGkZSQNlf2a-6wbf_mblUg2hToj52RR3ESxL43jext5J3kOXEcf_IQ_g3DI97RF5nAkXaytswiZDOtHcgnURgNbp7XFcJKr6yIZMEhUa6sGkl36g0qS3w-0yk/s1600/Tatice-Browsers-Google-Chrome.ico" /></a></div>
<br />
במידה הוחלטתם לשנות את שפת הממשק של הדפדפן של גוגל, ולא ממש מצאתם איך, יש לבצע את הפעולות הבאות:<br />
<br />
1) להכנס ל:<br />
<br />
C:\Users\%username%\AppData\Local\Google\Chrome\User Data<br />
<br />
2) לחפש קובץ בשם Local State<br />
<br />
3) להכנס בפנים ולחפש את intl<br />
<br />
4) לשנות שיראה כך:<br />
<br />
<br />
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="RTL"></span><span dir="LTR" lang="EN-US" style="mso-ansi-language: EN-US; mso-fareast-language: EN-US;">"intl":{"app_locale":"en-US"}</span><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-language: EN-US;"><o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="EN-US" style="mso-ansi-language: EN-US; mso-fareast-language: EN-US;"><br /></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
(ניתן להעתיק את הכתוב אך זכרו לבדוק ש הגרשיים נמצאים במקום הנכון)</div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="EN-US" style="mso-ansi-language: EN-US; mso-fareast-language: EN-US;"><br /></span></div>
<br /></div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-33477403753616898332020-03-23T10:46:00.000+02:002020-03-23T10:46:38.128+02:00פתרון לתקלה: מסך כחול כשמנסים להדפיס מאאוטלוק<div dir="rtl" style="text-align: right;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMj-Y2LjcgXChCfHsV0dTvY10Tn2vXLc0d5GjuwgPYDkGX0PQxjc4OyACPPtylhxVuP13kyDomrqx7pwfN2oXKSogERNzjoVilV4HhIvVU6uLCxC2g6qdQs8qFa3ZlIZk380kO5-VcVFo/s1600/iconfinder_243_Outlook_logo_4375032.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMj-Y2LjcgXChCfHsV0dTvY10Tn2vXLc0d5GjuwgPYDkGX0PQxjc4OyACPPtylhxVuP13kyDomrqx7pwfN2oXKSogERNzjoVilV4HhIvVU6uLCxC2g6qdQs8qFa3ZlIZk380kO5-VcVFo/s320/iconfinder_243_Outlook_logo_4375032.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><a href="https://www.iconfinder.com/Flatart" target="_blank">Picture by FlatArt</a></td></tr>
</tbody></table>
<br />
<br />
במידה ואתם מנסים להדפיס משהו מתוך אאוטלוק ואתם מקבלים מסך כחול (Blue Screen of Death) חובה להתקין למדפסת דרייבר מסוג PCL.</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-75979621080736230212020-03-22T13:51:00.000+02:002020-03-22T13:51:23.589+02:00פתרון לתקלה: אקסלים נפתחים ללא תוכן<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9R07lg8qbzdWIGonyJFfhMDZcWzh5pZ3-v-DZU_13fqMu_q3WUo-ixAAAB_iNDfTHC3oE5zWHQw9GuNuPeLkBX6X8NNtq9S5C5UENyoG3o4lBTlNAW-xnVEIiMP4tk2IuD12ted3Z1q8/s1600/Carlosjj-Microsoft-Office-2013-Excel.ico" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9R07lg8qbzdWIGonyJFfhMDZcWzh5pZ3-v-DZU_13fqMu_q3WUo-ixAAAB_iNDfTHC3oE5zWHQw9GuNuPeLkBX6X8NNtq9S5C5UENyoG3o4lBTlNAW-xnVEIiMP4tk2IuD12ted3Z1q8/s1600/Carlosjj-Microsoft-Office-2013-Excel.ico" /></a></div>
תסריט:<br />
<br />
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;">אתם נכנסים לסייר הקבצים, מנסים לפתוח קובץ אקסל על ידי "דאבל
קליק" ונפתח האקסל רק שבפנים רואים דף ריק:</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6NJG0FBCGjupqFYfSidTirSGuE7tO5UHKX6GODhQ9cIljRDeWQGNVlQttXlGjJeLCuVlaUfeFl7JiMeP6zaFxaHFYJa_X_qNLqzNK-2qGn30b3YFh_JtIbh9ktzWjw8YGXRu6zhhmu_g/s1600/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="345" data-original-width="606" height="227" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6NJG0FBCGjupqFYfSidTirSGuE7tO5UHKX6GODhQ9cIljRDeWQGNVlQttXlGjJeLCuVlaUfeFl7JiMeP6zaFxaHFYJa_X_qNLqzNK-2qGn30b3YFh_JtIbh9ktzWjw8YGXRu6zhhmu_g/s400/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C3.png" width="400" /></a></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;"><br /></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;">פתרון לתקלה:</span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;"></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;">1) קובץ<br />2)אפשרויות<br />3)מתקדם (</span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;">advanced</span><span dir="RTL"></span><span dir="RTL"></span><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;"><span dir="RTL"></span><span dir="RTL"></span>)<br />4)להוריד סימון מ: </span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;">Ignore other application
that use Dynamic Data Exchange </span><span lang="HE" style="mso-ansi-language: #0C00;"><o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOauCiP6hEPJ65sJiR9L9ugFcNG6DdTx8fPd9CiCJg1FQc7CZn-9YzgiHRXxTRl8ViBBHvE9i68NzWd5a0GZEVFnRY5rIr2T9lDLSFaVJYG-b5zdDLw8mWUJqPSRJ_j3GnFOtDCPI2TKM/s1600/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="508" data-original-width="608" height="333" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOauCiP6hEPJ65sJiR9L9ugFcNG6DdTx8fPd9CiCJg1FQc7CZn-9YzgiHRXxTRl8ViBBHvE9i68NzWd5a0GZEVFnRY5rIr2T9lDLSFaVJYG-b5zdDLw8mWUJqPSRJ_j3GnFOtDCPI2TKM/s400/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C4.png" width="400" /></a></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;"><br /></span></div>
<br /><br />
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;"><br /></span></div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-20013311135759293832020-03-22T13:41:00.000+02:002020-03-22T13:41:20.800+02:00פתרון לתקלה: הודעה שמתקבלת בהדפסה מאקסל :"Error Following Functions are On and Cannot"<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgePJdraKPtbbmiGA3n64KkT0o_Jbi24j6vOUjcWkxaAbacu3mrVVWtvvjKH5F6tKddgk4nMI-hA91s2t7PVeNv0vjxbRns1kYZzqdbkOh3UdxO3MClksxte1SqBtvEeq_9HQ-4pW6zTYc/s1600/Carlosjj-Microsoft-Office-2013-Excel.ico" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgePJdraKPtbbmiGA3n64KkT0o_Jbi24j6vOUjcWkxaAbacu3mrVVWtvvjKH5F6tKddgk4nMI-hA91s2t7PVeNv0vjxbRns1kYZzqdbkOh3UdxO3MClksxte1SqBtvEeq_9HQ-4pW6zTYc/s1600/Carlosjj-Microsoft-Office-2013-Excel.ico" /></a></div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;">יש פעמים שמנסים להדפיס מוורד או אקסל ומתקבלת השגיאה הבאה:<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<br /></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;">Error Following
Functions are On and Cannot be used in the Current Environment</span><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;"><o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUYR8pBC_qYJDssBxdKrNETAnm_zKTN4nJXmj2lwk_yEfe1FM1njzY7rBCvwbafT2l3pG7G0tbbcI7Xwgp3rE2yJJT6X0mhTIKVYfQ1p1YL27l83y0ZluCHgTw1LpcOc_mXMEqp3pwXvw/s1600/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="240" data-original-width="472" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUYR8pBC_qYJDssBxdKrNETAnm_zKTN4nJXmj2lwk_yEfe1FM1njzY7rBCvwbafT2l3pG7G0tbbcI7Xwgp3rE2yJJT6X0mhTIKVYfQ1p1YL27l83y0ZluCHgTw1LpcOc_mXMEqp3pwXvw/s400/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C1.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00;"></span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<br /></div>
<br />
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;">הפתרון הוא לגשת למדפסת:</span></div>
<div class="MsoNormal" dir="RTL" style="direction: rtl; text-align: right; unicode-bidi: embed;">
<span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00;"><br /></span></div>
<ol start="1" style="margin-top: 0cm;" type="1">
<li class="MsoListParagraph" dir="RTL" style="direction: rtl; margin-left: 0cm; mso-list: l0 level1 lfo1; text-align: right; unicode-bidi: embed;"><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";">קליק ימני על המדפסת</span><span lang="HE" style="mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";"><o:p></o:p></span></li>
<li class="MsoListParagraph" dir="RTL" style="direction: rtl; margin-left: 0cm; mso-list: l0 level1 lfo1; text-align: right; unicode-bidi: embed;"><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";">העדפות הדפסה</span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";"><o:p></o:p></span></li>
<li class="MsoListParagraph" dir="RTL" style="direction: rtl; margin-left: 0cm; mso-list: l0 level1 lfo1; text-align: right; unicode-bidi: embed;"><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";">אמורה להיות לשונית "</span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";">other</span><span dir="RTL"></span><span dir="RTL"></span><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";"><span dir="RTL"></span><span dir="RTL"></span>"</span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";"><o:p></o:p></span></li>
<li class="MsoListParagraph" dir="RTL" style="direction: rtl; margin-left: 0cm; mso-list: l0 level1 lfo1; text-align: right; unicode-bidi: embed;"><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";">יש להוריד שם סימון מתוך </span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";">Excel Job Control</span><span dir="RTL"></span><span dir="RTL"></span><span lang="HE" style="font-family: "Arial",sans-serif; mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";"><span dir="RTL"></span><span dir="RTL"></span>.</span><span dir="LTR" lang="en-IL" style="mso-ansi-language: #0C00; mso-fareast-font-family: "Times New Roman";"><o:p></o:p></span></li>
</ol>
<br /><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzfJ382GYpWDLMSxic3Wm48aqkn2OWDl4SyK_fkrondYGezrInrHLuEvq-A_qUyiWLY9TK8Fd-_XiUvC25z5eszcZYrimd0mfnNi_Q700YuyxaDzIiGbWevUF-zB12i7KlrItzueZSAJ4/s1600/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="154" data-original-width="280" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzfJ382GYpWDLMSxic3Wm48aqkn2OWDl4SyK_fkrondYGezrInrHLuEvq-A_qUyiWLY9TK8Fd-_XiUvC25z5eszcZYrimd0mfnNi_Q700YuyxaDzIiGbWevUF-zB12i7KlrItzueZSAJ4/s1600/%25D7%2590%25D7%25A7%25D7%25A1%25D7%259C2.png" /></a></div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-31646851243353555832020-03-22T12:22:00.000+02:002020-04-08T13:37:23.513+03:00פתרון לתקלה - כרטיס חכם לא עובד עם RDP (שולחן עבודה מרוחק)<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9ItmZ6-bwDQkuKUFPwJ1-zpYbFkqRhsQf1AFva-icmkbjVh2N77oG2MNq55UUADJZmwZxY7vlZUKigYA71muBVspJrv7b5EY-xN85belBo0_V8vkhAIaXT3quK8m_jG8pBgLlMKAIpK0/s1600/credit-card-2010884_1920.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1119" data-original-width="1600" height="223" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9ItmZ6-bwDQkuKUFPwJ1-zpYbFkqRhsQf1AFva-icmkbjVh2N77oG2MNq55UUADJZmwZxY7vlZUKigYA71muBVspJrv7b5EY-xN85belBo0_V8vkhAIaXT3quK8m_jG8pBgLlMKAIpK0/s320/credit-card-2010884_1920.jpg" width="320" /></a></div>
<div style="text-align: center;">
<a href="https://www.blogger.com/Image%20by%20%3Ca%20href=%22https://pixabay.com/users/mono2mono-439874/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=2010884%22%3Emono2mono%3C/a%3E%20from%20%3Ca%20href=%22https://pixabay.com/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=2010884%22%3EPixabay%3C/a%3E" target="_blank">Image by mono2mono from Pixabay </a></div>
<div style="text-align: center;">
<br /></div>
<span id="goog_886632277"></span>מדריך קצר, ובעצם פתרון לתקלה (כפי שכתות בכותרת) שיראה לכם בזריזות כיצד ניתן לטפל בתקלה שבה אין אפשרות לעבוד על מחשב מרוחק עם כרטיס חכם - בעצם נאפשר עבודה עם כרטיס חכם במחשב המרוחק, מתוך הגדרות ה RDP.<br />
<br />
<br />
1) נלחץ קליק ימני על אייקון ההתחברות מרחוק<br />
2) נלחץ על "עריכה" לרוב נמצא למעלה<br />
<br />
ונפעל לפי התמונה:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqaFhxDIt1Eyk3-JRUFwA7TQa5Y2wgpBSWar0NdugT7RlM9rtzDOtBz01TgoHuZxljGMW1T85JLltCcG6aE8F2txPvMkwoEJDkoBNSOINXii2irHKHyGQOtL7YGeKaApUwBl_ZN1dQaNY/s1600/RDP.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="690" data-original-width="751" height="366" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqaFhxDIt1Eyk3-JRUFwA7TQa5Y2wgpBSWar0NdugT7RlM9rtzDOtBz01TgoHuZxljGMW1T85JLltCcG6aE8F2txPvMkwoEJDkoBNSOINXii2irHKHyGQOtL7YGeKaApUwBl_ZN1dQaNY/s400/RDP.png" width="400" /></a></div>
<br />
(התמונה לא באיכות הכי גבוהה כי צילמתי את זה במהלך טיפול בתקלה - מאחר ואין לי מחשב עם כרטיס חכם בשביל לצלם את זה בצורה נורמלאית, אז תסלחו לי:) ).<br />
<br />
במידה ואין לכם את האופציה הזאת, יש צורך בהתקנת דרייבר לכרטיס חכם, ולאחר מכן לחזור על השלב הראשון.<br />
<br />
לכל שאלה: levl@LeiderTech.co.il</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com0tag:blogger.com,1999:blog-8431489733818004346.post-73954490241765834132020-03-22T09:29:00.000+02:002020-03-22T09:29:06.413+02:00איך לבצע התאמה של התקנה לאופיס 2016\2019\365?<div dir="rtl" style="text-align: right;" trbidi="on">
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiD5-Tfr3SED98zWUGFYtogvXGLIxGmDk74ZhbA33RzLtwzBNXIuizEeQGGcPCiG0YjJABWGhd6bPoEyARpH3VFFnCT-MLOvamzaxEVo6pYh7Ouio5UZtpSBMRRp2vZ5wMWWH3qkY5akeA/s1600/office-365-logo.png" imageanchor="1"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiD5-Tfr3SED98zWUGFYtogvXGLIxGmDk74ZhbA33RzLtwzBNXIuizEeQGGcPCiG0YjJABWGhd6bPoEyARpH3VFFnCT-MLOvamzaxEVo6pYh7Ouio5UZtpSBMRRp2vZ5wMWWH3qkY5akeA/s320/office-365-logo.png" width="320" /></a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
שלום לכם,</div>
<div style="text-align: right;">
מכירים את המצב הזה שבו אתם צריכים לענות למשתמש על השאלה "מה זה הדבר הזה?" כשהוא רואה Skype for business? או כשהוא רואה One Note?</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
אני מאמין שכולם מכירים את ההתקנה הרגילה של האופיס שבה ניתן לסמן מה אנחנו רוצים להתקין ומה לא, או לחלופין פעם היינו משתמשים ב OCT הידוע בכינויו "Office Customization Tool", אז מיקרוסופט השתדרגו והיום ניתן לבצע התקנה של אופיס 365 בעזרת משהו שנקרא תנחשו איך? בדיוק אותו דבר.. "Office Customization Tool"... רק שהפעם זאת לא תוכנה, אלה ממשק מאוד מאוד נוח שנמצא ברשת ופתוח לכולם, והוא בעצם אתר אינטרנט איתו נבצע יצוא של קבצי הקונפיגורציה ובמידה ונצטרך לבצע שינויים כאלה ואחרים, ניתן להעלות לשם את הקובץ לערוך אותו ולהוריד אותו שוב.<br />
<br />
לצורך כך, נצטרך להוריד את הכלי Office Deployment Tool להתקין אותו, ולאחר מכן לבצע עריכה באתר יעודי בכתובת config.office.com, ובסוף נאחד את ההגדרות עם הכלי שהורדנו.<br />
<br />
להלן לינק להורדת הכלי של מיקרוסופט: <a href="https://download.microsoft.com/download/2/7/A/27AF1BE6-DD20-4CB4-B154-EBAB8A7D4A7E/officedeploymenttool_12325-20288.exe" target="_blank">לינק</a><br />
<br />
<br />
הכלי - Office Deployment Tool.<br />
<br />
לאחר ההורדה, הפעילו את הקובץ, תאשרו את הרישיון, ולאחר מכן ביחרו תיקייה שאליה תרצו לפרוס את תוכן הקובץ,<br />
במקרה שלי, בחרתי לפרוס את התוכן של הקובץ לתיקייה בשם Office 2019, במידה והכל עבר בלי שגיאות (לא אמורות לצוץ שגיאות, אבל זה עולם המחשבים, לך תדע), תקבלו הודעה כזאת "Files extracted succsessfully"<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOFzZm9loo0VXq4RWGDqLFRbur2SkWuHDw1fhsZyNQYpIa7Y-smRbdw_esOeWUFA1C0o7FRvrvHxh3BgaFxtrqkhzvmKEF-UENjwMksXF0H888iKRCqFqhOgvEJXNe-6d42UaNP9EIb-s/s1600/success.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="183" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOFzZm9loo0VXq4RWGDqLFRbur2SkWuHDw1fhsZyNQYpIa7Y-smRbdw_esOeWUFA1C0o7FRvrvHxh3BgaFxtrqkhzvmKEF-UENjwMksXF0H888iKRCqFqhOgvEJXNe-6d42UaNP9EIb-s/s400/success.PNG" width="400" /></a></div>
<br />
<br />
<br />
תוכן התיקייה יראה כך:<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhppBkpfyk3hj5cnBL7PQdxvFtaTlS8RR3ycTQkWvhkIUdsOW_9fnzfwwcUmvyrxD9M5o70Ii0r6-TbPRL-yx_Y-a-JdngA4WVjSM_srEPjoqhKyJpivUMQOKj-U0iDykVLlUDMloCazzU/s1600/inside+of+a+folder.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="145" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhppBkpfyk3hj5cnBL7PQdxvFtaTlS8RR3ycTQkWvhkIUdsOW_9fnzfwwcUmvyrxD9M5o70Ii0r6-TbPRL-yx_Y-a-JdngA4WVjSM_srEPjoqhKyJpivUMQOKj-U0iDykVLlUDMloCazzU/s400/inside+of+a+folder.PNG" width="400" /></a></div>
<br />
<br />
אלו הם בעצם קבצי קונפיגורציה מוכנים מראש, וקובץ ההתקנה וההורדה של מיקרוסופט, כיצד להשתמש בכלל הקבצים הללו ומה ניתן לעשות בהם נלמד בהמשך.<br />
<br />
<br />
<br />
<br />
<br />
<br />
בכניסה לאתר תראו את הכתובת המסמלת שהגעתם לאתר הקונפיגורציה של האופיס<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBOEugPOdNJI4G6SfUKoX6gIc3M8-MZegE6L-tfKAGHynlCZLyEcD2eUEWMSpBWmLaTHy5GByP2adCDJ-jvMt1buuv8-Va05Dq93Y3uKrzzu9OUvV5iat0IKuLkB_oEhcDzWP5Up9ljhM/s1600/Welcome.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="116" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBOEugPOdNJI4G6SfUKoX6gIc3M8-MZegE6L-tfKAGHynlCZLyEcD2eUEWMSpBWmLaTHy5GByP2adCDJ-jvMt1buuv8-Va05Dq93Y3uKrzzu9OUvV5iat0IKuLkB_oEhcDzWP5Up9ljhM/s400/Welcome.PNG" width="400" /></a></div>
<br />
<br />
נגלול את הדף למטה ונקבל 2 אופציות:<br />
1) יצירת דף קונפיגורציות חדש<br />
<br />
2) יבוא של דף קונפיגורציות חדש ועריכתו.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY7Vp5y8GZbYDBtln8TlUchfPWIKuKEUORQF9BmL8_S2B2iDp6Q69C2V1xiR2aSYd-sU3JLP8PHCkak-XRsOJzotBES1uZMODoI2b22HUR_OkJngMGes4fYBgU1Ps8Fn4AgAqnCFRvn20/s1600/config.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY7Vp5y8GZbYDBtln8TlUchfPWIKuKEUORQF9BmL8_S2B2iDp6Q69C2V1xiR2aSYd-sU3JLP8PHCkak-XRsOJzotBES1uZMODoI2b22HUR_OkJngMGes4fYBgU1Ps8Fn4AgAqnCFRvn20/s400/config.PNG" width="397" /></a></div>
<br />
<br />
נתחיל עם החלק הראשון - יצירת דף קונפיגרוציות חדש<br />
<br />
לאחר שנלחץ עליו, נקבל את הרובריקה הראשונה שנקראת "Product and releases"<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidLPi12H6FQY0lFY217q0e9Pa0eIwk8f6wom4cwBZGpZryDnHrHr1KsLXbJpoNPb98_ZTtMEuqVM6PMmfCUUz3SCdWiy9e0XuzQgU7TZXNzkrJS0vtVu-bLLMt0WN1IfoZBzDEdTfz5dk/s1600/product.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="317" data-original-width="888" height="141" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidLPi12H6FQY0lFY217q0e9Pa0eIwk8f6wom4cwBZGpZryDnHrHr1KsLXbJpoNPb98_ZTtMEuqVM6PMmfCUUz3SCdWiy9e0XuzQgU7TZXNzkrJS0vtVu-bLLMt0WN1IfoZBzDEdTfz5dk/s400/product.PNG" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
במידה ונלחץ על החץ מצידו השמאלי של הטקסט, נוכל לראות את כל הרובריקות שנצטרך לעבור עליהן במהלך ביצוע ההתאמה:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwq6f8vvZIzCBFmPcbdpv4-CZvy2cZSjEH9LnJQmST7eLBYzjtlX3ld3vMDuLzWvrqSvyCn7kRYGvPNZ8AwI-jFiytR1ZwXS0HukaNvelgqrlxcZXBdSgL7-sUZfZxa5Dtr84j2LC0aKw/s1600/Arrow.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="67" data-original-width="242" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwq6f8vvZIzCBFmPcbdpv4-CZvy2cZSjEH9LnJQmST7eLBYzjtlX3ld3vMDuLzWvrqSvyCn7kRYGvPNZ8AwI-jFiytR1ZwXS0HukaNvelgqrlxcZXBdSgL7-sUZfZxa5Dtr84j2LC0aKw/s1600/Arrow.PNG" /></a></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<br />
להלן כל הקטגוריות:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhS95DJU7Bp05rTDhXGzAffUzKS1WfvfkX9QAFmAYZHccKoLikbynDlPNAJGtSWtm9rNBunV8QXN5AmUA6QkiqS_DtN0LAMrLwDX1ImRtRRPbYeOfunHysmf-kkfJN7ypvSU6AsbDuFu4A/s1600/categories.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="389" data-original-width="851" height="182" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhS95DJU7Bp05rTDhXGzAffUzKS1WfvfkX9QAFmAYZHccKoLikbynDlPNAJGtSWtm9rNBunV8QXN5AmUA6QkiqS_DtN0LAMrLwDX1ImRtRRPbYeOfunHysmf-kkfJN7ypvSU6AsbDuFu4A/s400/categories.PNG" width="400" /></a></div>
<br />
1) מוצרים והפצות.<br />
<br />
<ul style="text-align: right;">
<li><u>ארכטקטורת מוצר</u> - נבחר האם נרצה מוצר של 64 ביט או 32?</li>
<li><u>חבילת אופיס - </u> (איזו גירסה אתם רוצים?)</li>
<li><u>האם אתם צריכים Microsoft Visio</u>? - במידה ולא בחרו ב None</li>
<li><u>האם אתם צריכים Microsoft Project</u>? - במידה ולא בחרו ב None</li>
<li><u>מוצרים נוספים</u> - בחרו האם תצטרכו ערכת שפה (עברית במקרה?) - במידה וכן בחרו Language Pack.</li>
<li><u>עדכונים</u> - במידה ואתם מעוניינים בגירסה מסויימת בלבד, בחרו תחת הסעיף "איזו גירסה תרצה להפיץ?" את הגירסה המתאימה - אני אישית ממליץ להשאיר את זה כמו שזה, על מנת שתתקינו את הגירסה האחרונה והמעודכנת ביותר.</li>
<li><u>אפליקציות</u> - פשוט "כבו" את האפליקציות שאתם לא צריכים, אני ברוב המקרים מתקין רק כמה אפליקציות בלי האקסס, One Drive, פאבלישר, Skype for business.</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpLNqGfB24oXUy_VthF4Z83pBYMSgODLGKC02Vrynf8YvnWLkXCyo1gWUFiEQJvMEZ4mYQKtmk1hHTTBervLvYmWd5Hs4Hdrol7oBgOkrHj87qwQZt0g6ZWYFXXwuyMY98oMgHaCQ16RE/s1600/apps.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="606" height="168" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpLNqGfB24oXUy_VthF4Z83pBYMSgODLGKC02Vrynf8YvnWLkXCyo1gWUFiEQJvMEZ4mYQKtmk1hHTTBervLvYmWd5Hs4Hdrol7oBgOkrHj87qwQZt0g6ZWYFXXwuyMY98oMgHaCQ16RE/s400/apps.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
2) שפות.</div>
<div>
<br /></div>
<div>
לאחר שנלחץ על Next, נעבור לרובריקה הבאה שהיא בחירת שפת ההתקנה של חבילת האופיס.</div>
<div>
<ul style="text-align: right;">
<li>בחלק הראשון - נצטרך לבחור שפה ראשית - במקרה שלי אני בוחר אנגלית</li>
<li>בחלק השני - במידה ונצטרך נבחר שפה משנית - אני אוהב לבחור את השפה שניה תמיד עברית</li>
<li>בחלק השלישי - במידה ונצטרך נבחר עוד שפה.</li>
</ul>
<div>
לאחר שנלחץ על Add ניתן להשתמש בחיפוש למציאת השפה הרצויה, לאחר מכן נסמן את האופציה Full (אני מעדיף שתהיה כל החבילה ולא רק חלק ממנה)</div>
</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-lhzHOgsM37w6Fz6ck0-YgTiEBCwVbjZ5ZvLXBPwNfYx9S4v0dIbtcRZ3SIQv6NG1k7aIMXqXDo89RLLR3LBSBCFuaAkZPLDOzsSFPmNZxNeoJMM20Jg8jYSMxMccVtqZ9pxyLjhaB-Y/s1600/Language.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="427" data-original-width="774" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-lhzHOgsM37w6Fz6ck0-YgTiEBCwVbjZ5ZvLXBPwNfYx9S4v0dIbtcRZ3SIQv6NG1k7aIMXqXDo89RLLR3LBSBCFuaAkZPLDOzsSFPmNZxNeoJMM20Jg8jYSMxMccVtqZ9pxyLjhaB-Y/s400/Language.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
3) עדכונים ושדרוגים.</div>
<div>
<br /></div>
<div>
בחלק הזה תצטרכו לבחור כיצד תרצו לבצע את ההפצה</div>
<div>
<ul style="text-align: right;">
<li>CDN - ההפצה הרגילה של הורדת הרדת החבילה ישירות מאתר Microsoft דרך האינטרנט.</li>
<li>התקנה משרת קבצים, מיקום ברשת, מחשב מקומי.</li>
<li> System Centre Configuration Manager - SCCM.</li>
<li>בחרה האם תרצו לבצע עדכונים אוטומטיים - תמיד מומלץ.</li>
<li>שידרוג - בחרו באופציות המתאימות לכם.</li>
</ul>
<div>
4) רישיון ואקטיבציה.</div>
</div>
<div>
<br /></div>
<div>
בחלק זה מתאפשרת האופציה של קבלת תנאי הרישיון (EULA) וביצור האקטיבציה של המוצר, במהלך תהליך ההתקנה.</div>
<div>
<br /></div>
<div>
5) מידע כללי.</div>
<div>
<br /></div>
<div>
מלאו את הפרטים, כגון שם ארגון וכד'.</div>
<div>
<br /></div>
<div>
6) אפשרויות תוכנה.</div>
<div>
<br /></div>
<div>
בחלק זה יש לכם אפשרות לבצע התאמה של כל מוצר מתוך חבילת האופיס, השתמשו בתגיות שיש ברשימה, ולחצו על אחת החלוניות, מיד תקבלו את כל האופציות שניתן להגדיר באותו המוצר, לצורך הדוגמא, בחרתי Outlook:</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv9YHSshbanjHAB4dtJ6Ogw3h3UcsaCUy4wSa0wTKyU2zJL0YKy-NAyGpXuWQyHZwVCnfYEkLVuO7EW_NTfTLqM0E8HdMNyMZMOdOltBsn6QODvRvLEoeT00Ec01Ct4ET-ned-Kyx6iZA/s1600/configuration.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="565" data-original-width="829" height="272" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv9YHSshbanjHAB4dtJ6Ogw3h3UcsaCUy4wSa0wTKyU2zJL0YKy-NAyGpXuWQyHZwVCnfYEkLVuO7EW_NTfTLqM0E8HdMNyMZMOdOltBsn6QODvRvLEoeT00Ec01Ct4ET-ned-Kyx6iZA/s400/configuration.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
לאחר שסיימתם את ההגדרה, לחצו על Finish.</div>
<div>
<br /></div>
<br />
מצד ימין תוכלו לראות את כלל ההגדרות שבחרתם, עברו אליהן ולחצו למעלה על Export,<br />
<br />
במידה והגדרתם הכל נכון, תקבלו חלון ששואל לגבי תצורת ההשמירה של Word, Excel, PowerPoint, במידה ואין לכם מושג מה לבחור, פשוט הבחרו את האופציה הראשונה ולחצו על OK.<br />
<br />
בחלון הבא, אשרו את ההסכם, תנו שם לקובץ ההגדרות שתייצאו ופשוט תייצאו אותו לתיקיה מסויימת.<br />
<br />
כיצד נבצע התקנה?<br />
<br />
באותה התיקייה ששמתם בה את קובץ ה XML שיצרתם שימו את קובץ ה Setup שקיבלתם כשפרסתם את ה Deployment tool, וצרו קובץ batch וכיתבו בו את השורה הבאה:<br />
<br />
<div dir="ltr" style="text-align: center;">
setup.exe /configure "leiderTech-configuration.xml"</div>
<br />
<br />
פתחו את קובץ ה XML שיצרתם על מנת שתוכלו לראות את ההגדרות ולבצע שינויים במידת הצורך.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Gn_dCrmZPYAYYcnK6YijoRsLZvtnRzz2kB3RphcFBy8GHw6H6CCTMieGGlngLX6TsH0bghytrlebHhOkxbehaebXbBbCOcL_O3CMmq3HLnm3IGldy7oqpqxpQ37tuembBlt98kRIqDs/s1600/folder2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="224" data-original-width="441" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Gn_dCrmZPYAYYcnK6YijoRsLZvtnRzz2kB3RphcFBy8GHw6H6CCTMieGGlngLX6TsH0bghytrlebHhOkxbehaebXbBbCOcL_O3CMmq3HLnm3IGldy7oqpqxpQ37tuembBlt98kRIqDs/s400/folder2.PNG" width="400" /></a></div>
<br />
<br />
<br />
<br />
<b><u>במידה ותרצו לבצע התקנה של אופיס 32 ביט, באותו האתר ניתן לבצע יבוא של הקובץ הקיים, לעשות עריכה רק לארכטקטורה בחלק הראשון ולבצע יצוא לאחר מכן ולחזור על התהליך הנ"ל</u></b><br />
<br />
במידה ואתם מעוניינם רק לבצע הורדה של קבצי ההתקנה לפי קובץ ה XML, רישמו את הפקודה הבאה בסקריפט:<br />
<br />
<div style="text-align: center;">
"setup.exe /download "leiderTech-configuration.xml</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
קבצי ההורדה ירדו למקום בו נמצא הסקריפט עם קובץ ה XML וה Setup.</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
כיצד נבצע הסרה שקטה של חבילת האופיס?</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
לצורך ההסרה יש צורך בביצוע עריכה לקובץ ה XML בלבד, להלן קובץ ההגדרות שלי, אתם מוזמנים להעתיק אותו ולבצע התאמה לצריכים שלכם:</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<Configuration ID="830a5cde-088e-4045-b33f-944e75a695d4"></div>
<div style="text-align: left;">
<Remove OfficeClientEdition="32" Channel="PerpetualVL2019"></div>
<div style="text-align: left;">
<Product ID="ProPlus2019Volume" PIDKEY="blahb-blahb-blahb-blahb-blahb"></div>
<div style="text-align: left;">
<Language ID="en-us" /></div>
<div style="text-align: left;">
<Language ID="he-il" /></div>
<div style="text-align: left;">
</Product></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
</Remove></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<Updates Enabled="TRUE" /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<Display Level="Full" AcceptEULA="TRUE" /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
</Configuration></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: right;">
במידה והגדרתם הכל נכון ותבצעו התקנה, תקבלו התקנה עם האפליקציות שבחרתם בלבד.</div>
<div style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfDNqOICzRJiPOHiE0HLxL7ycVS3H5-6_uXo4RvWswPJP9fDvIDAKBLRLSKE0xoMlD4DcvQnL6xWkjWGBIatKSWXXDIQbRSLgisf0Q9sN1ZFiaMGq391K_F1pBEoFytDD2CV6bFhy-DIA/s1600/installation.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="580" data-original-width="869" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfDNqOICzRJiPOHiE0HLxL7ycVS3H5-6_uXo4RvWswPJP9fDvIDAKBLRLSKE0xoMlD4DcvQnL6xWkjWGBIatKSWXXDIQbRSLgisf0Q9sN1ZFiaMGq391K_F1pBEoFytDD2CV6bFhy-DIA/s400/installation.PNG" width="400" /></a></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br />
<div style="text-align: right;">
להלן מדריך מוסרט:<br />
<br /></div>
<div dir="rtl" style="text-align: center;" trbidi="on">
<iframe allowfullscreen="" frameborder="0" height="344" src="https://www.youtube.com/embed/Otj3oyXFR7Q?clip=&clipt=EAAYAA%3D%3D" width="459"></iframe></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
תודה רבה.<br />
<br />
לכל שאלה המייל שלי: levl@LeiderTech.co.il<br />
אל תשכחו לתת לנו לייק בדף הפייסבוק.</div>
</div>
<div style="text-align: left;">
<br /></div>
</div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com4tag:blogger.com,1999:blog-8431489733818004346.post-42665102643111004572020-03-17T10:33:00.001+02:002020-03-17T10:42:53.230+02:00איך לבצע התקנה של פורטי קליינט עם כל ההגדרות בפנים?<div dir="rtl" style="text-align: right;" trbidi="on">
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfXmu-o2eoH8DyCNqEkZ22cfRmlU6Dth0I3_RKYJhPe_3QzTvPk3CPRQyFPps_Ct0-AsWiDUZZXITSO5DN0sTEwSnFMQlUuYMO-tkFHE5MVhiR1oa0BQvegPg7XS0AqlRjChFKXctrTZw/s1600/kisspng-fortinet-ssl-vpn-virtual-private-network-fortigate-ssl-vpn-5b3b6114625921.0029271715306181324029.png" imageanchor="1"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfXmu-o2eoH8DyCNqEkZ22cfRmlU6Dth0I3_RKYJhPe_3QzTvPk3CPRQyFPps_Ct0-AsWiDUZZXITSO5DN0sTEwSnFMQlUuYMO-tkFHE5MVhiR1oa0BQvegPg7XS0AqlRjChFKXctrTZw/s320/kisspng-fortinet-ssl-vpn-virtual-private-network-fortigate-ssl-vpn-5b3b6114625921.0029271715306181324029.png" width="320" /></a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: right;">
שלום, במדריך זה נלמד כיצד לבצע הפצה של הפורטי קליינט בצורה זריזה ופשוטה ללא צורך בדומיין או בשירות הפצות כזה או אחר, המאמר מיודע לאנשים אשר מבצעים התקנות על מחשבים אצל לקוחות מרוחקים, או לעמדות אשר אין באפשרותן לבצע הפצה עם לוגין סקריפט או כל צורת הפצה אחרת.</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
צורת ההתקנה במדריך זה, מאפשרת התקנה כמעט אוט' לחלוטין עם כלל ההגדרות כבר בפנים.</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
לפני ביצוע המדריך הורידו את הקליינט הרשמי והפעילו אותו, לאחר שתסתיים ההורדה ותקבלו את ה Welcome Screen</div>
<div style="text-align: right;">
שנראה כך: </div>
<div style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4tGHkCxmUqSsRC0L6wI9VW0aiBu6TBbbi7bJ9MGEu7JPUYI7opkCL0_frXrO3aurBaJLVH2d1WB9I4_6B02IPkVnzS1T-MVl8k4JWUpCVThNR2zzIn3aat9uznhGiZ_Qro69jINQ8EjM/s1600/forti1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="366" data-original-width="504" height="290" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4tGHkCxmUqSsRC0L6wI9VW0aiBu6TBbbi7bJ9MGEu7JPUYI7opkCL0_frXrO3aurBaJLVH2d1WB9I4_6B02IPkVnzS1T-MVl8k4JWUpCVThNR2zzIn3aat9uznhGiZ_Qro69jINQ8EjM/s400/forti1.PNG" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
הכנסו לנתיב הבא במחשב:</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
c:\ProgramData\Applications\Cache</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
שם תמצאו עוד תיקייה עם שם גינרי (לדוגמא אצלי במחשב נמצאת תיקייה כזאת):</div>
<div class="separator" style="clear: both; text-align: right;">
{FDC50EB2-30B3-43C7-984A-B631FED09570}</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
בפנים תמצאו עוד תיקייה עם מספר הגירסה, ובפנים קובץ בשם FortiClient.msi,</div>
<br />
לדוגמא בזמן כתיבת שורות אלו, הגירסה העדכנית ביותר היא: 6.0.5.0209.<br />
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
העתיקו את הקובץ הזה לתיקייה נפרדת.</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
בנוסף רישמו לפניכם את נתיב הרג'סטרי הזה:</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both;">
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Fortinet\FortiClient\Sslvpn\Tunnels</div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
להלן תוכן הסקריפט (קובץ BAT) שיוצג בסרטון:</div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Pushd "%~dp0"</div>
<div class="separator" dir="ltr" style="clear: both; text-align: left;">
regedit /s .\LeiderTech.reg</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
msiexec.exe /qb /i "%~dp0FortiClient.msi" /norestart INSTALLLEVEL=3</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
<b><u>זכרו להריץ את קובץ ה BAT בתור אדמין ! - אחרת זה לא עובד</u></b></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<b><u>לפני ביצוע כל הנאמר בסרטון - חובה לבצע התקנה אחת שלמה עלמנת שיהיה אפשר יהיה לבצע יצוא להגדרות של הפורטי.</u></b></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
ועכשיו התחילו לצפות במדריך :).</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
<div dir="rtl" style="text-align: center;" trbidi="on">
<iframe allowfullscreen="" frameborder="0" height="344" src="https://www.youtube.com/embed/VQK3XwPEsEY" width="459"></iframe><br />
<br />
<br />
<br /></div>
תודה רבה שצפיתם,<br />
לכל שאלה המייל שלי levl@leidertech.co.il.<br />
<br />
אל תשכחו לתת לנו לייק בדף הפייסבוק :) חפשו אותנו LeiderTech.</div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com2tag:blogger.com,1999:blog-8431489733818004346.post-30437664561396414832019-11-25T10:30:00.004+02:002021-01-23T16:10:48.553+02:00מדריך ל Power Shell בעברית חלק 4 - לולאת foreach והפקודה foreach-object.<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtFwS7go3nWtRnXBR-O1yTWGWAvR_-qvg_eoFs6U1IgaQ87xVVtLJmsY8L7RqhFPSei6BmfDW6QoG6s6QaxG1sgHnHQVzdUmAMYgwc55dhPS5Q1rk7CX4fCz9Lb4ZXyuEjnRwJyfCiDas/s1600/PowerShell_5.0_icon.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="301" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtFwS7go3nWtRnXBR-O1yTWGWAvR_-qvg_eoFs6U1IgaQ87xVVtLJmsY8L7RqhFPSei6BmfDW6QoG6s6QaxG1sgHnHQVzdUmAMYgwc55dhPS5Q1rk7CX4fCz9Lb4ZXyuEjnRwJyfCiDas/s1600/PowerShell_5.0_icon.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
קורא יקר- לפני שאתה קורא את המאמר הזה חשוב לעבור על החלקים הראשונים של המדריך לצורך הבנה טובה יותר,<br /><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">
לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on">לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">
באחת התגובות למאמר הקודם קיבלתי בקשה של קורא:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL4I-bJyrf61PUyWUBs-lrKGn3OeH1Uiy59ve9Pmfp0ctm3PwEx3i8syB6xWL5oT-NyVcNSrRM-buIBUGblxamIkiXnW8yc-4oas6iwNwA0dhf9zAtfbDU8bbfV3HWgCOf0yJnwLr_X1A/s1600/post.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="152" data-original-width="471" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL4I-bJyrf61PUyWUBs-lrKGn3OeH1Uiy59ve9Pmfp0ctm3PwEx3i8syB6xWL5oT-NyVcNSrRM-buIBUGblxamIkiXnW8yc-4oas6iwNwA0dhf9zAtfbDU8bbfV3HWgCOf0yJnwLr_X1A/s400/post.PNG" width="400" /></a></div>
<br />
אז לבקשתך, מר "אנונימי" להלן מאמר המסביר על ההבדלים בין foreach-object לבין הללואה Foreach וכיצד לעובד איתן.<br />
<br />
אני חייב לשתף אתכם, לדעתי מחקתי את השורה הזאת (בדיוק את זאת שאתם קוראים עכשיו) קרוב ל 6 פעמים עד שהחלטתי כיצד אני אכתוב את ההסבר אודות שתי הפקודות האלה, כי הן מבלבלות מאוד, דומות מאוד, אבל עושות ומיועדות למטרות שונות לגמרי.<br />
<br />
<br />
<u>הלולאה\הצהרה (כל אחד קורא לזה בצורה אחרת) Foreach.</u><br />
<u><br /></u>
<br />
<ul style="text-align: right;">
<li>משהו שחשוב מאוד להבין לפני כן, "foreach" היא גם קיצור של הפקודה "foreach-object" אבל מדובר בשתי אובייקטים שונים, וכאשר משתמשים ב "foreach" שהיא הלולאה, אין אפשרות לרשום "foreach-object" אלה אך ורק "foreach" לעומת זאת כאשר משתמשים בפקודה "foreach-object" בתוך הפייפליין, ניתן לכתוב "foreach" במקום "foreach-object".</li>
</ul>
<br />
<br />
<b><u>Foreach</u></b> - היא אחת הלולאות שאתם הולכים להשתמש בה הכי הרבה וכמעט בכל מקום, מהסיבה הפשוטה, היא מאפשרת גמישות מאוד רבה, החל מ "עבור כל מחשב ברשימה, תן פינג לכתובת" עד שינוי משתמשים או בעצם כל דבר שהוא רשימה או מערך או אוסף אובייקטים (שכל אחד יבחר את ההגדרה המתאימה לו), והיא לא חייבת להיות בתוך הפייפליין.<br />
<br />
להבדיל מה foreach-object שעושה את אותו הדבר אבל היא חייבת להיות רק אחרי הפייפליין.<br />
<br />
אתן שלושה דוגמאות ל foreach ונלמד את מבנה הלולאה:<br />
<br />
<br />
<br />
תחילה מבנה הלולאה:<br />
<div dir="ltr" style="text-align: left;">
foreach ($variable1 in $variable2) {</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Do stuff with $variable1</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
}</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
כעקרון הסיפור הוא כזה, הלולאה הזאת לוקחת מערך או אוסף של אובייקטים ומבצעת על כל אובייקט פעולה כזאת או אחרת, לדוגמא יצירת משתמשים מתוך קובץ CSV, או סגירת פרוססים או סרוויסים וכד'.</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
החלק המבלבל בכל הסיפור הזה, זאת השורה הזאת <b>(</b>foreach <b><u>(variable1 in variable2</u></b><br />
<b><u><br /></u></b></div>
<div style="text-align: right;">
המשתנה הראשון, מייצג את את האובייקט הנוכחי מתוך האוסף שעליו אנחנו מבצעים פעולה כלשהי, הוא בכלל לא חייב להיות רשום בשם מסוים, למעשה בדוגמא בהמשך אתם תראו שקראתי לו בכלל בשם שניצל, מהסיבה שהוא לא באמת קיים, אלה רק מייצג את האובייקט ולא האובייקט עצמו, החלק השני הוא בעצם האובייקט או אוסף האובייקטים שעליהם אנחנו מבצעים פעולה כלשהי ולכן הוא חייב להיות רשום במדויק.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<br />
<b><u>דוגמא ראשונה: </u></b><br />
<div style="text-align: right;">
קודם כל נייצר משתנה עם כמה אובייקטים שיהיה לנו עם מה לעבוד -</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
$numbers = @(1, 2 , 3, 4)</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
עכשיו נשתמש בלולאה בשביל לעשות איזושהי פעולה על כל אחד מהאובייקטים האלה:<br />
<br />
בשביל להסביר את הלולאה יותר טוב, אני אציג שתי דוגמאות של אותו הסקריפט כאשר באחת נפעיל את המשתנה הראשון ובשניה נפעיל את המשתנה השני, בנוסף אציג עוד דוגמא בהמשך להסבר יותר ברור.<br />
<br />
בדוגמא הזאת בחרתי להפעיל את המשתנה שניצל שמייצג כל מספר שהלולאה עוברת עליו כרגע, לכן הפלט יהיה:<br />
"זה מספר השניצלים שאני אוכל ביום:1"<br />
"זה מספר השניצלים שאני אוכל ביום:2"<br />
"זה מספר השניצלים שאני אוכל ביום:3"<br />
"זה מספר השניצלים שאני אוכל ביום:4"<br />
<br /></div>
<div dir="ltr" style="text-align: left;">
foreach ($shnitzel in $numbers) {<br />
<br />
<br />
write-host "I eat this number of Shnitzels each day :" $shnitzel<br />
<br />
<br />
}</div>
<div dir="ltr" style="text-align: left;">
<div dir="rtl" style="text-align: right;">
פלט של הלולאה הראשונה:</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0jWag57a60x92Z9Eu-l0mDMqGLmbrM0OmHd2is3ZNFb4_RhdP-wXA7bHO-2BqUDy_bVOm0JnbB0WxE7F0qubyzAcaicNLgudwDCJnbhu2aQYW0QN_Wk2VP-TPEyKYITBkvLl4N-ZOVaE/s1600/Capture2.PNG" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="479" data-original-width="691" height="276" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0jWag57a60x92Z9Eu-l0mDMqGLmbrM0OmHd2is3ZNFb4_RhdP-wXA7bHO-2BqUDy_bVOm0JnbB0WxE7F0qubyzAcaicNLgudwDCJnbhu2aQYW0QN_Wk2VP-TPEyKYITBkvLl4N-ZOVaE/s400/Capture2.PNG" width="400" /></a></div>
<div dir="rtl" style="text-align: right;">
<br />
<div dir="ltr" style="text-align: left;">
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<b><u>דוגמא שניה:</u></b></div>
<div dir="rtl" style="text-align: right;">
בדוגמא זאת אני אפעיל את המשתנה numbers אשר מכיל בתוכו כרגע את המערך "1234" (אם נכתוב ב powershell את ה משתנה numbers$ נקבל את מה שהוא מכיל בתוכו) </div>
<div dir="rtl" style="text-align: right;">
<br /></div>
</div>
<div dir="ltr" style="text-align: left;">
<br />
$numbers = @(1, 2 , 3, 4)</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
foreach ($shnitzels in $numbers) {</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
write-host "I eat $numbers of shnitzel each day"</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
}<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj419onrNvAl9ZY64zb9_Agtc4UmpBJ7sT2vmnXjAqRpSuTBbxXnAth5YIdadaObX18FxM2fX9x0eQ4HhrVqogMQ_54vJIWY2vgLJ3tM_RiprsQ1YBzbsTB8utSAUSRlvtaQSZQH68M0MU/s1600/Capture1.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="459" data-original-width="697" height="262" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj419onrNvAl9ZY64zb9_Agtc4UmpBJ7sT2vmnXjAqRpSuTBbxXnAth5YIdadaObX18FxM2fX9x0eQ4HhrVqogMQ_54vJIWY2vgLJ3tM_RiprsQ1YBzbsTB8utSAUSRlvtaQSZQH68M0MU/s400/Capture1.PNG" width="400" /></a></div>
<br />
<br />
<div dir="rtl" style="text-align: right;">
במקרה של הדוגמא הנ"ל, הפלט יהיה:</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
"אני אוכל 1234 שניצלים ביום"</div>
<div dir="rtl" style="text-align: right;">
"אני אוכל 1234 שניצלים ביום"</div>
<div dir="rtl" style="text-align: right;">
"אני אוכל 1234 שניצלים ביום"</div>
<div dir="rtl" style="text-align: right;">
"אני אוכל 1234 שניצלים ביום"</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
למה? כי הפעלנו את המשתנה numbers$ שמכיל את כל האובייקטים בתוכו במקום להכיל כל אובייקט בנפרד - ובעצם הלולאה לא עוברת על כל אובייקט בנפרד אלה על כולם ביחד, מה שיוצר בעצם חזרה לפי כמות המספרים שיש בתוך המשתנה.</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
</div>
<br />
<b><u>דוגמא שלישית:</u></b></div>
<div dir="rtl" style="text-align: right;">
עוד דוגמא מעניינת ללולאה, בדוגמא הזאת אנחנו נציב במשתנה stuff את get-process בשביל שנוכל לקבל אוסף של אובייקטים, מאחר והפלט של get-process יתן לנו רשימת פרוססים עובדים.</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="ltr" style="direction: ltr; text-align: left;">
$stuff = Get-Process<br />
<br />
foreach ($thing in $stuff){<br />
<br />
Write-Host "The name of the process is :" $thing.Name<br />
Write-Host "`n"<br />
Write-Host "The used cpu of the process is:" $thing.cpu<br />
Write-Host "`n"<br />
<br />
}<br />
<br />
<div style="direction: rtl;">
<div style="text-align: right;">
תשימו לב שבתוך מבנה הלולאה רשום <span style="text-align: left;">thing.Name$ ואתם בטח שואלים את עצמכם מה זה?, אז אני שמח ששאלתם, התשובה מאוד פשוטה ודיי הגיונית, מאחר ואני רוצה לקבל את שם הפרוסס, אז אני אומר למערכת שתציג לי את המשתנה שכרגע נמצא בלולאה ואת העמודה name ואותו דבר גם בשורה השניה thing.cpu$ וכך הלאה.. מאוד נוח נכון? והאמת שגם מאוד הגיוני כי הפרוש של הפקודה בעצם נראה ככה "process.property " (אני מקווה שאתם זוכרים ש property ב PowerShell הוא בעצם ה"עמודה", אם לא, אז הינה הזכרתי לכם :) ).</span></div>
<div style="text-align: right;">
<span style="text-align: left;"><br /></span></div>
<div style="text-align: right;">
<span style="text-align: left;">ועוד שאלה, מה זה" <u>"</u></span><span style="text-align: left;"><u>Write-Host "`n</u> " ??</span></div>
</div>
<div style="direction: rtl; text-align: right;">
<span style="text-align: left;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="text-align: left;">אז אני שמח ששאלתם, המשמעות של הפקודה הזאת write-host היא להוציא פלט למסך שזה דיי הגיוני אם מתחשבים בתרגום הפקודה, אבל מה היא המשמעות של הגרש והאות n באנגלית?</span></div>
<div style="direction: rtl; text-align: right;">
<span style="text-align: left;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="text-align: left;">אז ככה, המשמעות היא מאוד פשוטה, האות n היא קיצור של המילה "new" באנגלית והגרש "`" היא פרמטר "בריחה" (אני מת על תרגום ישיר מאנגלית לעברית :) ) יש המון כאלה ואנחנו נעבור עליהם באחד המדריכים בהמשך, כרגע המשמעות של הגרש בצירוף האות n באנלית היא פשוטה מאוד - שורה חדשה, ככה שכש write-host רואה את הצמד הזה, הוא יודע שהוא פשוט מייצר שורה חדשה בלי שום טקסט - ואת זה אנחנו נראה בדוגמא הזאת.</span></div>
<div style="direction: rtl; text-align: right;">
<span style="text-align: left;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="text-align: left;">לא חייבים להשתמש בו אבל זה פשוט יותר נוח מבחינת קריאה.</span></div>
</div>
<br />
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
הפלט של הלולאה:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaLGdK_gDzSnYKRj3egJyBiXcwwL7w1bhQlKPpmamfnxPaFBGvw3ECEBxhJTb6YDel5zZotKqkLFy9Wcr4qdLgqKFc4zeps7f9g6tlwDF9uR_yiwi96hz4JuJQF9iU42vo2L1-iqWwEpA/s1600/Capture3.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="371" data-original-width="721" height="205" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaLGdK_gDzSnYKRj3egJyBiXcwwL7w1bhQlKPpmamfnxPaFBGvw3ECEBxhJTb6YDel5zZotKqkLFy9Wcr4qdLgqKFc4zeps7f9g6tlwDF9uR_yiwi96hz4JuJQF9iU42vo2L1-iqWwEpA/s400/Capture3.PNG" width="400" /></a></div>
<br /></div>
<div dir="rtl" style="text-align: right;">
תשימו לב שבין השורות יש רווח בלי טקסט - אז זה בעצם מה שעושה :<span style="text-align: center;">"write-host "`n.</span><br />
<span style="text-align: center;"><br /></span>
<br />
<div style="-webkit-text-stroke-width: 0px; color: black; direction: rtl; font-family: "times new roman"; font-size: medium; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: right; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;">
</div>
<br />
<div style="-webkit-text-stroke-width: 0px; color: black; direction: rtl; font-family: "times new roman"; font-size: medium; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;">
<div style="margin: 0px; text-align: right;">
<b><u>דוגמא רביעית:</u></b></div>
<div style="margin: 0px; text-align: right;">
<span style="text-align: left;">אגב בעבודה עם קובץ csv, ברגע שמבצעים פקודה בסגנון import-csv ויש לכם עמודות, אז ניתן אחרי הנקודה לרשום את העמודה שאתם רוצים להציג והיא תופיע בלולאה עצמה, להלן דוגמא לסקריפט ליצירת משתמשים באקטיב דירקטורי שאני עובד איתו כל פעם שאני צריך לבנות אקטיב דירקטורי:</span></div>
<div dir="ltr" style="margin: 0px; text-align: right;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
cls</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
#get the csv file</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$filepath = import-csv "C:\scriptingstuff\User creation script\users.csv"</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
#set the variable for the uers</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<span style="text-align: left;"></span></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$newusers = $filepath</div>
<div style="margin: 0px;">
<br /></div>
<div style="margin: 0px; text-align: left;">
#start the loop </div>
<div style="margin: 0px; text-align: left;">
<br /></div>
<div style="margin: 0px; text-align: left;">
foreach ($user in $newusers) {</div>
<div style="margin: 0px; text-align: left;">
<br /></div>
<div style="margin: 0px; text-align: left;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
#get user information</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$firstname = $user.'First Name'.Trim()</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$lastname = $user.Lastname.Trim()</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$loginname= $user.SamAccountName</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$securepassword = $user.Pass</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$jobtitle = $user.'Job Title'</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$Department= $user.Department</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$Description = $user.Description</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$OuPath= $user.Path</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$LoginScript=$user.ScriptPath</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$displayname= $user.DisplayName</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
$email = $user.Email</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
#creat the users in active directory</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
New-ADUser -Name "$firstname $lastname" -GivenName $firstname -Surname $lastname -UserPrincipalName $loginname -Path $OuPath -SamAccountName $loginname -AccountPassword (ConvertTo-SecureString "AccountPassword" -AsPlainText -Force) -ChangePasswordAtLogon $false -EmailAddress $email -DisplayName $displayname -Enabled $true </div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<span style="text-align: left;"></span></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
Write-Host "`n"</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
Write-Host "The account for $firstname $lastname created in $OuPath successfully"</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<br /></div>
<div dir="ltr" style="margin: 0px; text-align: left;">
}</div>
<div dir="ltr" style="margin: 0px; text-align: left;">
<br /></div>
<div style="margin: 0px; text-align: right;">
בחלק הראשון של הסקריפט, כפי שניתן לראות, אנחנו מייבאים את קובץ ה CSV בעזרת הפרודה import-csv, ולאחר מכן בתוך הסקריפט אנחנו רושמים על יד כל משתנה, איזו עמודה אנחנו רוצים לייצג בתוך הסקריפט, ככה שבעצם לדוגמא בשדה המייל בפרופיל של המשתמש אנחנו רוצים להוסיף את המייל, אז בפקודה להוספת המשתמש שהיא new-aduser נציג את הפרמטר <span style="text-align: left;">EmailAddress </span>ולידו נרשום את המשתנה שהגדרנו בו הפניה לעמודה המתאימה בקובץ ה CSV ובעצם בצורה קצרה זה יראה ככה new-aduser -<span style="text-align: left;">EmailAddress</span><span style="text-align: left;"> $email כי לפני כן הגדרנו את זה:</span></div>
$email = $email.Email<br />
<div style="margin: 0px; text-align: right;">
<br /></div>
</div>
<span style="text-align: center;"><br /></span>
<b><u>הפקודה Foreach-object.</u></b><br />
<b><u><br /></u></b></div>
</div>
<div dir="ltr" style="text-align: left;">
<div dir="rtl" style="text-align: right;">
אז אחרי שעברנו על הלולאה foreach, הגיע הזמן שנעבור לחלק השני של המדריך הזה, הפקודה foreach-object, כעקרון הפקודה עובדת בצורה דומה מאוד ללולאה רק שכאן היא נמצאת אך ורק מאחורי הפייפליין, בדוגמאות הבאות אנחנו נראה איך זה נראה בפועל.<br />
<br />
המבנה של הפקודה זהה אך ורק שכאן ראשית יבוא המשתנה, לאחר מכן הפייפליין ולאחריו הפקודה עצמה.<br />
<br />
כעקרון מה שיקרה כאן, זה מצב שבו אנחנו ניקח אוסף של אובייקטים (מערך) ונעביר כל אחד מהם דרך הפייפליין ואז נבצע על האובייקט איזושהי פעולה.<br />
<br />
<b>¿?<u>(במידה ואתם לא מכירים את הסימן הזה "_$" או "psitem$" אני ממליץ לכם להפסיק לקרוא את המדריך ולעבור על החלק השלישי של המדריך כי באיזשהו שלב לא תבינו על מה אני מדבר במדריכים העתידיים וזה מאוד חיוני שתבינו את כל הדוגמא לצורך הבנה ולימוד פשוטים יותר- יש קישור בתחתית הפוסט וגם בתחילתו)</u>¿?</b><br />
<br />
<u>דוגמא ראשונה (עם הסימון psitem$):</u><br />
<div dir="ltr" style="text-align: left;">
$numbers = @(1, 2 , 3, 4)<br />
<br />
$numbers | foreach-object {write-host "I eat $numbers of <b><u>$Psitem</u></b> each day"}<br />
<br />
<div style="direction: rtl; text-align: right;">
<u>פלט של הפקודה:</u></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixqSR9cxnmd4EHhp8EjvJoM8_1FS8kXbO0UWbs6Z1xYuTR19uhR7o0QfpiX8VdNywpYEZV4WUVvw_vENuhK4mtUKmrp331XZYNJvDn_Eh-arnbm7J9SPdDxpahyAI2GMVPOsmzftd-v5w/s1600/Capture4.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="640" data-original-width="657" height="388" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixqSR9cxnmd4EHhp8EjvJoM8_1FS8kXbO0UWbs6Z1xYuTR19uhR7o0QfpiX8VdNywpYEZV4WUVvw_vENuhK4mtUKmrp331XZYNJvDn_Eh-arnbm7J9SPdDxpahyAI2GMVPOsmzftd-v5w/s400/Capture4.PNG" width="400" /></a></div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
<u>דוגמא שניה (</u> עם _$<u>):</u></div>
<div style="direction: rtl; text-align: right;">
<br /></div>
$numbers = @(1, 2 , 3, 4)<br />
<br />
$numbers | foreach-object {write-host "I eat $numbers of <b><u>$_</u></b> each day"}<br />
<br />
<div dir="rtl" style="text-align: right;">
פלט של הפקודה:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0-qgQQ1tzZuLJxpkPdz4wXt8Sr5_HlIjzCINeprKnevoQDqgHwqqBgixWRHaynJ6D_EiVEf-mRF7hQmfo6n032wb-N8mW1nfSHT2DwK4cadrXWLV1IdOK1tKNy9NfmnPmCKBZTSYjC1o/s1600/Capture5.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="615" data-original-width="617" height="397" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0-qgQQ1tzZuLJxpkPdz4wXt8Sr5_HlIjzCINeprKnevoQDqgHwqqBgixWRHaynJ6D_EiVEf-mRF7hQmfo6n032wb-N8mW1nfSHT2DwK4cadrXWLV1IdOK1tKNy9NfmnPmCKBZTSYjC1o/s400/Capture5.PNG" width="400" /></a></div>
<br />
<br />
<div dir="rtl" style="text-align: right;">
<u>דוגמא שלישית</u>:</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br /></div>
$stuff = Get-Process<br />
<br />
$stuff |ForEach-Object {<br />
<br />
Write-Host "the name of the procrss is: " $_.Name<br />
<br />
}<br />
<div>
<br /></div>
<div>
<br /></div>
<div dir="rtl" style="text-align: right;">
פלט של הפקודה:</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1UsADuqfkTVwSRlfI8GOCGfMYLL8iPoDzfb1ZYfC2KmFxNmJ3PqWh2SHOqtnvSLaZQhB9uglZ_ncu3IdqKjfKv0V0dwskGVwvQV4phnn2S0tTreFQW7F4xQmLwv6qOY_d43XbTsR9jn8/s1600/Capture6.PNG" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="697" data-original-width="698" height="396" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1UsADuqfkTVwSRlfI8GOCGfMYLL8iPoDzfb1ZYfC2KmFxNmJ3PqWh2SHOqtnvSLaZQhB9uglZ_ncu3IdqKjfKv0V0dwskGVwvQV4phnn2S0tTreFQW7F4xQmLwv6qOY_d43XbTsR9jn8/s400/Capture6.PNG" width="400" /></a></div>
<div dir="rtl" style="text-align: right;">
</div>
<div style="text-align: left;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br />
<b><u>אז מתי בעצם משתמשים במה שלמדנו היום?</u></b></div>
</div>
</div>
</div>
בכל מצב שבו תצטרכו לבצע מוניפולציות על כמה אובייקטים ביחד לדוגמא, תחשבו שיש לכם כמות יפה של מחשבים שאתם רוצים לבצע עליהם פעולה כלשהי, הדבר הכי פשוט שיש, בדיקת פינג.<br />
<br />
למה שלא תרשמו את כל המחשבים מראש ותריצו פקודה אחת שפשוט תעשה את זה עבורכם?<br />
<br />
<div dir="ltr" style="text-align: left;">
cls</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
$pcs = "www.google.co.il","www.ynet.co.il"</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
foreach ($pc in $pcs) {</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
ping $pc</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
}</div>
<br />
אני אישית בדיוק בזמן כתיבת פוסט זה, הרצתי ברקע סקריפט שכתבתי ליצירת יוזרים באקטיב דירקטורי, אשר לוקח משתמשים מקובץ CSV, עם כל הפרטים שאני רוצה ויוצר אותם ללא כל בעיה.<br />
<br />
הפוטנציאל הוא באמת אדיר והוא תלוי אך ורק בכם ובדמיון שלכם.<br />
<br />
<div dir="rtl" style="text-align: right;" trbidi="on">
<iframe allowfullscreen="" frameborder="0" height="270" src="https://www.youtube.com/embed/YAFx3cYfrfA" width="480"></iframe></div>
<b><u><br /></u></b>
<br />
<br />
<br />
<br />
<br />
<span style="background-color: white;">המייל שלי לכל שאלה</span><span face="arial, tahoma, helvetica, freesans, sans-serif" style="background-color: white; color: #333333; font-size: 14.85px;"> :</span><br />
<span face="arial, tahoma, helvetica, freesans, sans-serif" style="background-color: white; color: #333333; font-size: 14.85px;">levl@leidertech.co.il</span><br />
<div>
<span face="arial, tahoma, helvetica, freesans, sans-serif" style="color: #333333;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div>
<span face="arial, tahoma, helvetica, freesans, sans-serif" style="color: #333333;"><span style="font-size: 14.85px;">אל תשכחו לתת לנו לייק בדף הפייסבוק - חפשו LeiderTech</span></span><br /><br /></div><div>
לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div>לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com8tag:blogger.com,1999:blog-8431489733818004346.post-35539503354805637952019-09-28T10:15:00.001+03:002019-11-25T10:21:38.351+02:00איך לעשות חשיפה כפולה עם SnapSeed באנדרואיד?<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyr8MbFF93wo_0jvRDVVskXqtViydvYhynXOnzd1d7GEoVpQkKZdMMIDM8_A_rHGxEDnVi2fSlFW_V4c-F91nqBMI0XOGGElZ4F7H6zGsqfjXHVKkOnhyphenhypheneMDXVdEZrxROlXwX_LU9triI/s1600/snapseed-redesign-cover1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="800" data-original-width="1600" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyr8MbFF93wo_0jvRDVVskXqtViydvYhynXOnzd1d7GEoVpQkKZdMMIDM8_A_rHGxEDnVi2fSlFW_V4c-F91nqBMI0XOGGElZ4F7H6zGsqfjXHVKkOnhyphenhypheneMDXVdEZrxROlXwX_LU9triI/s400/snapseed-redesign-cover1.png" width="400" /></a></div>
שלום לכם גולשים יקרים,<br />
הפעם החלטתי להתמקד במשהו קצת שונה מהתחום שאני מדריך עליו בדרך כלל, במדריך זה אנחנו נדבר על ביצוע עריכה בעזרת הפונקציה "חשיפה כפולה" באפליקציית ה SnapSeed.<br />
<b><u><br /></u></b>
<b><u>אני אומר מראש, אני לא צלם מקצועי ולא אחד שבכלל מבין ברמה כל כך גבוהה בצילום בשביל להדריך ולהסביר למישהו כיצד לצלם, ומה לצלם, וגם לא עורך ווידאו או משהו בסגנון.</u></b><br />
<b><u><br /></u></b>
<b><u><br /></u></b>
מי שחיפש את המדריך הזה יודע טוב מאוד מה זאת האפליקציה הזאת ולכן אין צורך בהסבר אודותיה והיכן ניתן להוריד.<br />
<br />
אז בלי יותר מדי דיבורים:<br />
<br />
תהנו :)<br />
<br />
<span id="goog_1832294583"></span><a href="https://www.blogger.com/"></a><span id="goog_1832294584"></span>(נ"ב - אני מתנצל על הסאונד, לצערי הרב בדיוק בזמן ההקלטה האוזניות שלי החליטו להתקלקל)<br />
<br />
<div dir="rtl" style="text-align: right;" trbidi="on">
<iframe allowfullscreen="" frameborder="0" height="270" src="https://www.youtube.com/embed/iSgJzAhRG5U" width="480"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<b><u><br /></u></b>
כמו תמיד, אל תתביישו להשאיר תגובות - קללות ופרסומות אני מוחק, כל השאר לא.<br />
<br />
לכל שאלה שאלה ניתן לכתוב מייל לכתובת: levl@leidertech.co.il<br />
<br />
<br />
<span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14.85px;">אל תשכחו לתת לנו לייק בדף הפייסבוק - חפשו LeiderTech</span></div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com4tag:blogger.com,1999:blog-8431489733818004346.post-4990827678429337672019-08-13T22:41:00.005+03:002021-01-23T16:10:33.379+02:00מדריך ל Power Shell בעברית חלק 3 - הרחבה של סינונים ומיונים.<div dir="rtl" style="text-align: right;" trbidi="on">
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s1600/PowerShell_5.0_icon.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s1600/PowerShell_5.0_icon.png" /></a></div>
<div style="text-align: center;">
<span style="color: #3d85c6; font-size: large;"><span style="background-color: white;">חלק 3</span></span></div>
<br />
<div>
<u><br /></u>
<u>שלום - במידה ולא קראת את החלק הראשון והשני של המדריך אין לך טעם להמשיך לקרוא, אנא עבור על החלק הראשון והשני של המדריך:<br /></u><br />לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div>לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a><br />
<br />
מאחר וקיבלתי המון מיילים עם בקשות אודות פירוט על פקודות הסינון, החלטתי למקד את כל המאמר ולשדרג את חלק 2 ולהרחיב אותו במעט על מנת שזה יענה לכם על השאלות.<br />
<br />
<span style="font-family: inherit;">מאמר זה יתמקד אך ורק ב - 3 פקודות הסינון ב PowerShell</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">1) select-object</span><br />
<span style="font-family: inherit;">2) where-object</span><br />
<span style="font-family: inherit;">3) group-object</span><br />
<br />
<br />
<div style="text-align: center;">
<u style="font-family: "times new roman";"><b>מיונים, מיונים, מיונים</b></u></div>
</div>
<div style="text-align: right; text-indent: 0px;">
<div style="margin: 0px;">
<div>
<span face="arial, helvetica, sans-serif"><br /></span>
<span style="font-family: inherit;"><b>Select-object</b> - מדובר בפקודה שמאפשרת לנו להציג אך ורק אובייקטים ספציפים שמתאימים למה שאנחנו צריכים, מה זאת אומרת?, הכוונה היא לפקודה שמאפשרת לי פשוט לבחור אילו עמודות אני רוצה להציג בפלט שלי.</span><br />
<span style="font-family: inherit;"><span face="arial, helvetica, sans-serif"><br /></span>
<span face="arial, helvetica, sans-serif"><span style="font-family: "times new roman";">ל</span>צורך ההדגמה אני צריך פקודה עם הרבה עמודות, אני אקח את get-process שיציג לי את התהליכים של הדפדפן אינטרנט גוגל כרום, אז נבצע את זה בצורה הבאה: get-process -name chrome (שימו לב, ניתן גם לקבל פלט בלי הפרמטר Name אבל מאחר ואתם רק בהתחלה, מאוד ממליץ לא לעשות קיצורי דרך ולהשתמש בכל הפרמטרים שאתם יכולים, על מנת שהמוח שלכם יזכור את הפעולות והפרמטרים בצורה טובה יות<span style="font-family: "times new roman";">ר) </span></span></span><br />
<div>
<span style="font-family: inherit;"><br /></span></div>
</div>
<div>
<div>
<span style="font-family: inherit;">נקבל את הפלט הבא:</span><br />
<span style="font-family: "times new roman";"><br /></span>
<br />
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b>get-process -name chrome</b></span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b><br /></b></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp545nUaAucXFR-3nvhXreltULl5cMLfuqmib1mG_1jIDCn-2I7NZc3FzXyDo1D8pKPvu3VxV6Mtxqph6YK7-6NyNLSejfeRUit38SmArAPVhCR83QLwG2_oq_5WXuwkI71VE8bJwUV6s/s1600/get-proccess-name-chrome.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="293" data-original-width="574" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp545nUaAucXFR-3nvhXreltULl5cMLfuqmib1mG_1jIDCn-2I7NZc3FzXyDo1D8pKPvu3VxV6Mtxqph6YK7-6NyNLSejfeRUit38SmArAPVhCR83QLwG2_oq_5WXuwkI71VE8bJwUV6s/s400/get-proccess-name-chrome.PNG" width="400" /></a></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b><br /></b></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";">לאחר מכן אני אריץ את אותה הפקודה עם הפרמטר get-member בשביל לבדוק אילו עמודות אני יכול להציג</span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b>get-process -name chrome |get-member</b></span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b><br /></b></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg44Oqvgqz2cuxBkLOIWBCVjIFSkkTlH-EhBwHdanihxDEPr2jY5OpJfyc7QZ8S9cUPqcU2MHnwPYL1I_WTmSSZf40bT_C4l8KIfjxjmw8nQywtdgbsWzM4PAE9KoUcskHtsPPFgrsA-uU/s1600/get-member-cut.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="524" data-original-width="327" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg44Oqvgqz2cuxBkLOIWBCVjIFSkkTlH-EhBwHdanihxDEPr2jY5OpJfyc7QZ8S9cUPqcU2MHnwPYL1I_WTmSSZf40bT_C4l8KIfjxjmw8nQywtdgbsWzM4PAE9KoUcskHtsPPFgrsA-uU/s400/get-member-cut.png" width="247" /></a></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b><br /></b></span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";">קיצרתי את הרשימה, לצורך ההדגמה אבל ישנם גם Methods שאילו הם בעצם פעולות שניתן לבצע על האובייקט (זאת אומרת, להפעיל, לסגור, להרוג תהליך וכד'), עמודות כפי שלמדנו במדריכים הקודמים נקראים Properties וגם ה Alias Properties הם עמודות, רק שהחליטו לקצר להם את השם, אז במקרה הזה אני ארצה להציג את ה:<br />Processname, ID ,Responding:</span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";">אז בעצם הפקודה שלנו תראה כך:</span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><b>get-process -Name chrome |Select-Object Processname,ID,responding</b></span></div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-F5HSdxUhqfqouBDR2M7HGuhx4mYNnUOQ9yCJUopphtFfxM8ST7NvilTVm9V0ai6MLlwgq7oTq9CMVBqKRpna_JiTIxltArDlTxK_LNDqYZWiso8iJeWSrD-dS9XqhqydqUcXXnveKY/s1600/select-object.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="501" data-original-width="728" height="275" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-F5HSdxUhqfqouBDR2M7HGuhx4mYNnUOQ9yCJUopphtFfxM8ST7NvilTVm9V0ai6MLlwgq7oTq9CMVBqKRpna_JiTIxltArDlTxK_LNDqYZWiso8iJeWSrD-dS9XqhqydqUcXXnveKY/s400/select-object.PNG" width="400" /></a></div>
<div style="text-align: center;">
<b style="font-family: "times new roman";">(שימו לב, בחלק השני של הדוגמא - ניתן לראות את הפקודה הנ"ל ללא שימוש ב- Select-object)</b><br />
<b style="font-family: "times new roman";"><br /></b>
<br />
<div style="text-align: right;">
<span style="font-family: "times new roman";"><b><u>האם ניתן לבצע שינוי לשם העמודות? - כן</u></b></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";">נצא מנקודת הנחה שאתם רוצים לשנות את שם העמודה שאתם מקבלים כי זה יותר נוח לכם, ניתן לבצע שינויים אומנם הסינטקס יהיה קצת יותר ארוך, לצורך הדוגמא אני אקח את הפקודה שהשתמשתי בא למעלה - get-process עם הפרוסס של כרום:</span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3c5kq7UPOycgXVN0ezTVQZXU86XE2eXtsomJdJnYRA5AXCBPyDtb5Q-Wrxt3xDmUxFPU0-PoaMmlDOI6zt5UTidfgRS5iGVr8BvLqbHj5hIWGLUw-pUO9avLrJLmEUjX2SWG5viCMXfA/s1600/snitzel.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="594" data-original-width="846" height="280" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3c5kq7UPOycgXVN0ezTVQZXU86XE2eXtsomJdJnYRA5AXCBPyDtb5Q-Wrxt3xDmUxFPU0-PoaMmlDOI6zt5UTidfgRS5iGVr8BvLqbHj5hIWGLUw-pUO9avLrJLmEUjX2SWG5viCMXfA/s400/snitzel.PNG" width="400" /></a></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";">להלן הפקודה עצמה: </span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";">Get-Process chrome |Select-Object @{label='Shnitzel_levs_test' ; expression='Id'}, ProcessName</span></div>
<div style="text-align: center;">
<span style="font-family: "times new roman";"><br /></span></div>
<div style="text-align: right;">
<span style="font-family: "times new roman";">בעצם מה שהוספנו זה הסבר לפקודה Select-object אודות מה שאנחנו רוצים לעשות, זאת אומרת לשנות את השם של העמודה הרצויה בפלט, ולא משנה האם השינוי מתבצע בעמודה הראשונה או האחרונה, ובאיזה סדר אתם מסדרים את זה, האם השינוי יהיה הראשון ולאחר מכן העמודות הרגילות, או קודם העמודות הרגילות ולאחר מכן העמודה המותאמת אישית.</span></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
(לי אישית זה הפריע שהפקודה בנויה הפוך - קודם השם שאתם רוצים לתת לפלט ואחרי זה בחירת העמודה, אבל בסוף מתרגלים)</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
במקרה של הדוגמא הנ"ל ביצעתי שינוי לעמודה Id וקראתי לה בשם Shnitzel_levs_test</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
* הפרמטר "Label" - מסמן את השם שאנחנו רוצים לתת </div>
<div style="text-align: right;">
* הפרמטר " Expression" - מסמן את העמודה שאנחנו רוצים לשנות</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
ניתן לקצר ולכתוב אך ורק את האותיות ההתחלתיות "l" ו האות " e" מה שיגרום לפקודה להיראות ככה:</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
Get-Process chrome |Select-Object @{l='Shnitzel_levs_test' ; e='Id'}, ProcessName<br />
<br />
במידה וקשה לכם לזכור, ניתן לעשות את זה בצורה יותר נוחה (הכל תלוי בכם):<br />
<br />
ניתן להחליף את האות "l" (האות L בקטן) בתוך @{<b><u>l</u></b>='Shnitzel_levs_test' ; e='Id'} באות "N" (קטנה) או לשם שינוי לכתוב את המילה "name" ותקבלו את אותה התוצאה, כמו כן כמו בכל הפעמים את ה סימן "._$" ניתן להחליף במילה Psitem$ וגם כאן תקבלו את אותה התוצאה.<br />
<br />
Get-Process chrome |select @{<b><u>n</u></b>='Shnizel_levs_test';e={$_.Id}},ProcessName<br />
<br />
Get-Process chrome |select @{<b><u>name</u></b>='Shnizel_levs_test';e={$PSItem.Id}},ProcessName<br />
<br />
<br /></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
התוצאה תהיה זהה.</div>
</div>
<span style="font-family: "times new roman";"><br /></span>
<span style="font-family: "times new roman";"><br /></span><br />
<span style="font-family: "times new roman";"><b><u>where-object</u></b> - המטרה של הפקודה הזאת היא לבצע סינון שיכול לעזור לנו מאוד במהלך העבודה היומיומית שלנו, כשמה כן היא, הפקודה הזאת מראה לנו אך ורק אוביקטים שאנחנו מעוניינים לראות, המינוס בפקודה הזאת שהסינטקס שלה יכול להיות מאוד מאוד מבלבל או לחלופין מאוד מאוד קל ("מבולבלים?, גם אנחנו")</span><br />
<br />
עם הפקודה הזאת ניתן לעשות המון סינונים ולכן ישנם גם המון פרמטרים:<br />
<br />
<span style="font-family: inherit;"><br /></span>
<br />
<div style="text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="text-align: left;">
<div style="text-align: center;">
<u><span style="font-family: inherit;">פרמטרים השוואתיים</span></u></div>
</div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-eq<span style="white-space: pre;"> </span>שווה ל</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-ne<span style="white-space: pre;"> </span>לא שווה ל</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-gt<span style="white-space: pre;"> </span>גדול מ</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-ge<span style="white-space: pre;"> </span>גדול מ או שווה ל</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-lt<span style="white-space: pre;"> </span>קטן מ</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-le<span style="white-space: pre;"> </span>קטן מ או שווה ל</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<div style="text-align: center;">
<u><span style="font-family: inherit;">פרמטרי התאמה</span></u></div>
</div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-like - *.txt הצג תוצאות אשר דומות למחרוזת הכתובה (טקסט) ניתן להתמש ב"וייל קארד" - לדוגמא </span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">Get-Service bits |Where-Object status -Like running</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-notlike - *.txt הצג תוצאות אשר לא דומות למחרוזת הכתובה (טקסט) ניתן להתמש ב"וייל קארד" - לדוגמא </span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">Get-Service bits |Where-Object status -NotLike running</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-match - הצג תוצאות אשר המחרוזת מתאימה לערך מסויים</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">Get-Service bits |Where-Object status -Match running</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">-notmatch - הצג תוצאות אשר המחרוזת לא מאימה לערך מסויים</span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: ltr; text-align: left;">
<span style="font-family: inherit;">Get-Service bits |Where-Object status -NotMatch running</span></div>
<div style="direction: ltr; text-align: left;">
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">¿?יש עוד המון פרמטרים לפקודה הזאת את כולם ניתן לראות באתר של מיקרוסופט <a href="https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/where-object?view=powershell-6" target="_blank">כאן</a>¿?</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">כפי שהזכרנו למעלה, ניתן להשתמש בפקודה הזאת בסינטקס פשוט ובסינטקס "מורכב" יותר </span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">דוגמא לסינטקס פשוט: </span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">"Get-Service bits |Where-Object status -eq "running</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">דוגמא לסינטקס ה"מורכב" :</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">{"Get-Service bits |Where-Object {$_.status -eq "running</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<u><span style="font-family: inherit;">מה המשמעות של הסימן הזה "._$" בפקודה Where-object? </span></u><br />
<span style="font-family: inherit;"> ובכן לצורך ההבנה, אנחנו נפרק את ההסבר על הפרמטר הזה ל-2, החלק הראשון הוא הסבר על הסימן של ה "._$" ולאחר מכן נוסיף את ה "." והמילה "status".</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">ניקח לדוגמא את הפקודה get-services, הפקודה הזאת מייצרת המון שורות והמון עמודות, במקרה הזה הסימן "_$" מיצג כל שורה שעוברת בתוך הפייפליין, למי שנוח בתור התחלה יכול גם להשתמש במילה psitem$ ואז הפקודה תיראה ככה {"where-object {$psitem.status -eq "running</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">לאחר הסימן של ה "_$" מתווספת גם ה "." והמילה "Status", המשמעות היא מאוד פשוטה, ועכשיו זה יתחבר לכם עם החלק הראשון, במקרה הזה, אני רוצה לראות אך ורק את העמודה בעלת השם Status מכל התוצאות, ואז בעצם הפקודה תתפרש ככה: "הראה לי מתוך התוצאה של get-service רק את העמודה "Status" בעלת הערך "running", ואם נעשה "Reverse Engineering" נקבל את זה ככה:</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: center;">
{"get-service bits |where-object {$psitem.status -eq "running</div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
לצורך הדוגמא, הרצתי את כל האופציות על מנת שתבינו:</div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmWGMcZ3hAgMHPqymUU2Kmw4Vo_aAIW-ktZndsjeoFPnsF1qQrgoJ7SA7IviH3q7I09dSjq6U2bBrVQVQofSGZf7HSLON5JZC1fzz5TfW1xv_oQ1f5g7HGnj1vaPKBFBAF5HNGTDPBxfA/s1600/where-object-psitem.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="277" data-original-width="690" height="160" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmWGMcZ3hAgMHPqymUU2Kmw4Vo_aAIW-ktZndsjeoFPnsF1qQrgoJ7SA7IviH3q7I09dSjq6U2bBrVQVQofSGZf7HSLON5JZC1fzz5TfW1xv_oQ1f5g7HGnj1vaPKBFBAF5HNGTDPBxfA/s400/where-object-psitem.PNG" width="400" /></a></div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;">בטח אתם שואלים את עצמכם "למה בעצם להשתמש בסינטקס המורכב?" מאחר ואת הסינטקס הפשוט אי אפשר לדחוף בתור סקריפט, ואת המורכב כן.</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><b><u>לצורך דוגמא</u></b> - להלן סקריפט שאני משתמש בו לבדוק האם כתובת IP מסוימת נמצאת ב Reservation בשרת ה DHCP שלי:</span></div>
<div style="direction: rtl; text-align: right;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;">"Write-Host " this scrip will check if any ip is reserevd on the local DHCP</span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;">Get-DhcpServerv4Scope |select Name,@{l='Scope' ; e='ScopeID'}, StartRange, EndRange |ft -AutoSize</span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;">"scopes = Read-Host " what is the Ip Adress that you want to search? - enter ipadress$</span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;">Get-DhcpServerv4Reservation -ComputerName $env:COMPUTERNAME -ScopeId $scopes |</span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;">הפקודה בשילוב הסקריפט -> <b style="text-decoration-line: underline;">{"*Where-Object {$_.IPAddress -like "*$scopes</b> |</span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"> </span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;">Select-Object IPAddress, ScopeId, Description |ft -AutoSize</span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"><br /></span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"> </span></div>
<div style="direction: rtl;">
<span style="font-family: inherit;"> pause</span></div>
</div>
<div style="text-align: left;">
<br />
<br /></div>
<span style="font-family: "times new roman";"><br /></span>
<span style="font-family: "times new roman";"><br /></span>
<span style="font-family: "times new roman";"><u style="font-weight: bold;">group-object</u> - מאפשר לבצע קיבוץ של התוצאה לפי שמות של עמודות, או שמות האובייקט וכד'.</span><br />
<span style="font-family: inherit;"><br />
להלן 2 דוגמאות :</span><br />
<span style="font-family: inherit;">1) Get-Service -Name bits, wscsvc,winrm |Group-Object status, displayname</span><br />
<span style="font-family: inherit;"><span style="font-family: "times new roman";"><br /></span>
<span style="font-family: "times new roman";">2) Get-Service -Name bits, wscsvc,winrm |Group-Object DisplayName, status</span></span><br />
<span style="font-family: inherit;"><span style="font-family: "times new roman";"><br /></span>
</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfsEIBAGxWGSbatd5PyWecPHWY2otQSbASukDQfO5t1-QA_JwIx126t6wYmxR2PMDD1uDKr1-bcIvgNpeE7xDPoxN0e-S940mUGPxSOkLQnY28et3rOq3oznu0kpLKL8ZP5wUAs3xh70o/s1600/group-object.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="290" data-original-width="791" height="145" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfsEIBAGxWGSbatd5PyWecPHWY2otQSbASukDQfO5t1-QA_JwIx126t6wYmxR2PMDD1uDKr1-bcIvgNpeE7xDPoxN0e-S940mUGPxSOkLQnY28et3rOq3oznu0kpLKL8ZP5wUAs3xh70o/s400/group-object.PNG" width="400" /></a></div>
<br />
<br />
<span style="font-family: "times new roman";"><br /></span>
<span style="font-family: "times new roman";"><br /></span>מדיך מצולם :<br />
<span style="font-family: "times new roman";"><br /></span>
</div>
<iframe allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/4rbSwQCgoTk" width="560"></iframe>
<br />
<div>
<span style="font-family: "times new roman";"><br /></span>
<span style="font-family: "times new roman";"><br /></span>
<br />
<span style="font-family: "times new roman";">עד כאן להפעם.</span><span style="background-color: white;"><br />המייל שלי לכל שאלה</span><span face="arial, tahoma, helvetica, freesans, sans-serif" style="background-color: white; color: #333333; font-size: 14.85px;"> :</span><br />
<span face="arial, tahoma, helvetica, freesans, sans-serif" style="background-color: white; color: #333333; font-size: 14.85px;">levl@leidertech.co.il</span><br />
<div>
<span face="arial, tahoma, helvetica, freesans, sans-serif" style="color: #333333;"><span style="font-size: 14.85px;"><br /></span></span></div>
<div>
<span face="arial, tahoma, helvetica, freesans, sans-serif" style="color: #333333;"><span style="font-size: 14.85px;">אל תשכחו לתת לנו לייק בדף הפייסבוק - חפשו LeiderTech.</span></span></div><div><span style="color: #333333;"><span style="font-size: 14.85px;"><br /></span></span>לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div>
<span style="font-family: "times new roman";"><span style="font-family: "Times New Roman";">לפורום בנושא באתר devhub.co.il </span><a href="https://devhub.co.il/boards/forum/123-powershell/" style="font-family: "Times New Roman";" target="_blank">כאן</a></span></div>
<div>
</div>
</div>
</div>
</div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com13tag:blogger.com,1999:blog-8431489733818004346.post-31217081991129015122019-08-06T13:43:00.002+03:002021-04-30T22:54:40.407+03:00פקודות PowerShell שימושיות<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s1600/PowerShell_5.0_icon.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmyxZltt-yVHNMgYYvLimTcpf36sYWylskNx-1HWLjNZdhANOXUr0q40h1UCy_kk5Uv5moci5pYJwcAB3VOaYni-mqTtr2A_tGJQdvDUnWM8aIvC3_xoUuvraAZZLbTtTG8t1BQ6fQBPE/s1600/PowerShell_5.0_icon.png" /></a></div>
<div style="text-align: center;">
פקודות שיעשו את החיים שלכם הרבה יותר קלים ופרודוקטיביים</div>
<br />
כמו כולנו גם אני נתקל לפעמים במצבים שבהם אין לי זמן לקרוא הדרכות ומדריכים לגבי כל מיני דברים בתחום שלי ואני צריך לספק פתרון, או להתחיל פרוייקט כזה או אחר, והדבר היחיד שחסר לי עכשיו זה להתחיל לחפש מדריכים באינטרנט.<br />
<br />
אז החלטתי לעשות לכם את החיים כלים, לתת לכם כאן רשימה של פקודות לשימוש "יומיומי" לכל מיני מצבים.<br />
<br />
(אצרף גם פקודות שיכולות לעבוד ב CMD למצבים בהם אתם עובדים עם מערכות ישנות יותר מ Windows 8)<br /><br />
<b><u>מחשבים מקומיים</u></b><br />
<b><u><br /></u></b>
1) <u>בדיקת תאריך התקנה של מערכת הפעלה:</u><br />
<div style="text-align: left;">
<u><br /></u></div>
<div style="text-align: left;">
<u>:PowerShell</u></div>
<div style="text-align: left;">
<u><br /></u></div>
<div style="text-align: left;">
Get-CimInstance Win32_OperatingSystem | select Version, InstallDate, OSArchitecture</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:CMD</div>
<div style="direction: ltr; text-align: left;">
systeminfo | find /i "install date"</div>
<div style="text-align: left;">
<br /></div>
2) <u>קבלת מספר סידורי של מחשב עוזר במיוחד למחשבים ניידים :</u><br />
<div style="text-align: left;">
<u><br /></u></div>
<div style="text-align: left;">
<u>:PowerShell</u></div>
<div style="text-align: left;">
<u><br /></u></div>
<div style="text-align: left;">
Get-WmiObject win32_bios | fl SerialNumber</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:CMD</div>
<div style="text-align: left;">
wmic bios get serialnumber</div>
<div style="text-align: left;">
<br /></div>
<br />
3) <u>בדיקת דגם של מחשב</u><u>:</u><br />
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:PowerShell</div>
<div style="direction: ltr; text-align: left;">
Get-CimInstance -ClassName Win32_ComputerSystem |select Manufacturer, Model</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:CMD</div>
<div style="text-align: left;">
wmic computersystem get model</div>
<div style="text-align: left;">
<br /></div>
4)<u> בדיקת גירסת מערכת הפעלה כולל סוג ארכטיקטורה:</u><br />
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:PowerShell</div>
<div style="direction: ltr; text-align: left;">
Get-CimInstance Win32_OperatingSystem | select Version,OSArchitecture</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:CMD</div>
<div style="direction: ltr; text-align: left;">
wmic OS get Caption, OSArchitecture</div>
<div style="text-align: left;">
<br /></div>
<div>
5) <u>בדיקה - כמה זמן המחשב דלוק?</u></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:PowerShell</div>
<div style="direction: ltr; text-align: left;">
(get-date) - (gcim Win32_OperatingSystem).LastBootUpTime |select Days, Hours |ft -AutoSize</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
:CMD</div>
<div style="direction: ltr; text-align: left;">
systeminfo | find "System Boot Time"</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: rtl;">
6) במידה והמחשב בדומיין ואתם מקבלים הודעה על trust relationship (אני אישית לא בדקתי את זה)</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr;">
<div style="direction: ltr; text-align: left;">
Test-ComputerSecureChannel -Credential domain\admin -Repair</div>
<div>
<br /></div>
</div>
<div>
<br /></div>
<br />
<b><u>פקודות לשרתים: </u></b><br />
<br />
1) ניתוק כל המשתמשים שהסשן שלהם במצב Disconnected (טוב לשרתי טרמינל):<br />
<div style="text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-RDUserSession |where sessionstate -like *STATE_DISCONNECTED* |Invoke-RDUserLogoff</div>
<br />
2) מציאת משתמש ב Active Directory והצגת הנתיב בו הוא ממוקם (עוזר לעבודה עם נתיבי LDAP):<br />
<div style="text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-ADUser -Filter 'Name -like "*lev*"' |select name, DistinguishedName |Format-Table -AutoSize</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
3) מציאת כל המאפיינים של המשתמש: </div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-ADUser -Filter 'Name -like "*sus*"' -Properties *|gm</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
4) מציאת קבצים שנפתחו על ידי משתמש (ניתן לרשום גם את שם הקובץ בעברית):</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-SmbOpenFile |where {$_.Path –like "*.xls"} |select ClientUserName, path</div>
<div>
<br /></div>
<div>
במידה ורוצים לסגור את הקובץ באותח הפקודה - נוסיף סימן " Pipe" ( נמצא מעל האנטר -> | ) ואז נוסיף את הפקודה </div>
<div style="text-align: left;">
<br /></div>
<div>
<div style="text-align: left;">
Close-SMBOpenFile</div>
</div>
<div style="text-align: left;">
<br /></div>
<div>
או שניתן להעתיק את הפקודה כאן:</div>
<div style="text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-SmbOpenFile |where {$_.Path –like "*.pdf"} | Close-SMBOpenFile</div>
<div style="direction: ltr;">
<br /></div></div><p>5) פקודה שתראה לכם את רשימת הפקודות שיש למודול מסויים:</p><p style="text-align: left;">Get-Command -Module hyper-v</p><div dir="rtl" style="text-align: right;" trbidi="on">
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<b><u>החלק הבא יעסוק בניהול שרתי אופיס 365 דרך PowerShell לצורך כך, חובה לבצע הכנת התחנה שלכם להתחברות ועבודה מול שרתים 365 - קיצרתי לכם את כל המדריך הארוך של מיקרוסופט לכמה צעדים</u></b><b><u>:</u></b></div>
<div style="direction: rtl;">
<b><u><br /></u></b></div>
<div style="direction: rtl;">
1) קודם כל אם אתם על windows 7\8\8.1 ביצעו הורדה של של גירסת ה PowerShell האחרונה - <a href="https://www.microsoft.com/en-us/download/details.aspx?id=54616" target="_blank">כאן</a></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
2) פתחו את PowerShell עם משתמש אדמיניסטרטור (לא משנה אם זה ISE או הרגיל) והריצו:</div>
<div style="direction: ltr;">
Install-Module -Name AzureAD</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
3) לאחר מכן התקינו את Microsoft Online Services Sign-In Assistant for IT Professionals (מסיבה לא מובנת ניתן להתקין את זה אך ורק על מערכות 64 ביט): <a href="https://www.microsoft.com/en-us/download/details.aspx?id=41950" target="_blank">כאן</a></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
4) לאחר שביצעתם התקנה - פתחו את PowerShell בתור מנהל (לא משנה אם ISE או הרגיל) והריצו:</div>
<div style="direction: rtl;">
Install-Module MSOnline </div>
<div style="direction: rtl;">
* במהלך ההתקנה תצטרכו לענות על שאלות - אני מאמין שתאשרו את הכל.</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
להלן המקור של המדריך מהאתר של מיקרוסופט : <a href="https://docs.microsoft.com/en-us/office365/enterprise/powershell/connect-to-office-365-powershell" target="_blank">לינק</a></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<b><u>פקודות לשימוש באופיס 365:</u></b></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<u>לידע כללי</u></div>
<div style="direction: rtl;">
<u><br /></u></div>
<div style="direction: rtl;">
לצורך עבודה עם אופיס 365 הכולל בתוכו Exchange, Skype, SharePoint, ActiveDirectory Azure, office 365 ישנן כמה אפשרויות, או להתחבר לכל השירותים ביחד, או להתחבר לשירות ספציפי, בסביבת העובדה שלי יש לי צורך בחיבור אך ורק לכמה שירותים, אבל במידה ואתם רוצים להתחבר להכל ביחד, להלן סקריפט שניתן לבצע בו עריכה כרצונכם - באתר של מיקרוסופט: <a href="https://docs.microsoft.com/en-us/office365/enterprise/powershell/connect-to-all-office-365-services-in-a-single-windows-powershell-window" target="_blank">לינק</a></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<u>לגופו של עניין:</u></div>
<div style="direction: rtl;">
<u><br /></u></div>
<div style="direction: rtl;">
אני עובד אך ורק עם 365, ושרת Exchange, לכן לצורך כך, אפרסם כאן סקריפט שאני משתמש בו להתחבר לשירותים האללו בלבד.</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<b><u>מדוע להתחבר לשירותים הללו ביחד ולא בנפרד?</u></b></div>
<div style="direction: rtl;">
בעצם ברגע שאנחנו מבצעים התחברות לשירות כזה או אחר של מיקרוסופט, במהלך החיבור PowerShell מייבא פקודות רלוונטיות ואז במידה ואתם תרצו להשתמש בפקודות של Exchange לא תצטרכו לבצע חיבור חדש או לחלופין במידה ואתם התחברתם ל 365 יתבצע יבוא של פקודות רלוונטיות ולא תצטרכו להתחבר לשירות של Exchange.</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<b>¿? מאחר וכאן אני לא עוסק בהסברים יותר מדי - מי שמעוניין "לחפור" יותר עמוק - מוזמן לעשות זאת לבד¿?</b></div>
<div style="direction: rtl;">
<b><br /></b></div>
<div style="direction: rtl;">
<u>התחברות ראשונית לשירותי מיקרוסופט</u></div>
<div style="direction: rtl;">
<u><br /></u></div>
<div style="direction: rtl;">
<b><u>(העדיפות כאן היא לעבוד עם ISE - כי פשוט יותר נוח)</u></b></div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
לאחר שתריצו את הסקריפט תקבלו חלון שבו תתבקשו להכניס הרשאות - אלו הן הרשאות לחיבור עם חשבון מנהל ה 365 שלכם ללא דומיין וללא שום דבר</div>
<div style="direction: rtl;">
שם משתמש (לדוגמא) :levadmin@leidertch.co.il</div>
<div style="direction: rtl;">
סיסמא: ToLongPassw0rd2Remmber!</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
לאחר מכן לחצו אינטר וכל שאר הדברים יתבצעו לבד.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
$creds = Get-Credential</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ `</div>
<div style="direction: ltr; text-align: left;">
-Credential $creds -Authentication Basic -AllowRedirection</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Import-Module MSOnline</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Connect-MsolService -Credential $creds</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Import-PSSession $Session</div>
<br />
<br />
<b><u>רשימת הפקודות:</u></b><br />
<br />
1) יצירת משתמש חדש - אך ורק במידה ויש רישיונות פנויים (אין אפשרות לרכוש רישיון חדש דרך PowerShell) אלה רק להקצות:<br />
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
New-MsolUser -UserPrincipalName sararuchama@expattaxcpas.com -DisplayName "Lev It" -FirstName "Lev" -LastName "WhatEver" -LicenseAssignment EXPATTAXCPAS:EXCHANGESTANDARD -UsageLocation IL</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
2) מציאת משתמש:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: rtl; text-align: left;">
Get-MsolUser -SearchString sar</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: rtl;">
3) איפוס סיסמא:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-MsolUserPassword -UserPrincipalName user@yourdomain.com -NewPassword blah123</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
4) שינוי שם תצוגה:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-MsolUser -UserPrincipalName garfield@odie.net -DisplayName "Garfield"</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
5) שינוי מייל ראשי של משתמש אך ורק בתוך Exchange online:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-MsolUserPrincipalName -UserPrincipalName anne.wallace@contoso.onmicrosoft.com -NewUserPrincipalName anne.jones@whatever.com</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
<b><u>עבודה עם רשימות תפוצה (Distribution groups) </u></b></div>
<div style="direction: rtl;">
<b><u><br /></u></b></div>
<div style="direction: rtl;">
1) הצגת כל רשימות התפוצה:</div>
<div style="direction: rtl; text-align: left;">
Get-DistributionGroup<br />
<br />
<div style="text-align: right;">
2) חיפוש רשימת תפוצה:</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Get-DistributionGroup -Identity "Marketing Reports"</div>
</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: rtl;">
3) הצגת רשימת משתמשים בתוך רשימת תפוצה ספציפית:</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-DistributionGroupmember "group name"</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: rtl;">
4) הוספת משתמש (מאפשר הוספה של משתמש אחד בלבד - להוספה מרובה, עבור לסעיף 8) לרשימת תפוצה:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: rtl; text-align: left;">
Add-DistributionGroupMember -Identity "admin team" -Member moshecohen -BypassSecurityGroupManagerCheck</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: rtl;">
5) שינוי שם לרשימת תפוצה: </div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-DistributionGroup -Identity OldGroupName -Name NewGroupName -IgnoreNamingPolicy</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: rtl;">
6) מציאת כל רשימות התפוצה שמשתמש חבר בהן: </div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
$Username = "email_adress@OfTheUser.com"</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-DistributionGroup | where { (Get-DistributionGroupMember $_.Name | foreach {$_.PrimarySmtpAddress}) -contains "$Username"}</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: rtl;">
7) מחיקת משתמש מרשימת תפוצה:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Remove-DistributionGroupMember -Identity "Group Name" -Member wanteduser -BypassSecurityGroupManagerCheck</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
8) בדיקת כמות משתמשים בחשבון הנוכחי:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
(get-user).count<br />
<br />
<div dir="rtl" style="text-align: right;">
9) הוספת כמה משתמשים ביחד לרשימת תפוצה (קיימת):</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
Update-DistributionGroupMember -Identity "Research Reports" -Members<br />
lev@leidertech.co.il,moshe@leidertech.co.il,hava@leidertech.co.il,shula@leidertech.co.il<br />
<br />
<br />
<div dir="rtl" style="text-align: right;">
10) יצירת רשימת תפוצה:</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: left;">
"New-DistributionGroup New-DistributionGroup -Name "Managers" -Type "Distribution</div>
<div style="text-align: left;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div dir="rtl" style="text-align: right;">
11) יצירת רשימת תפוצה חדשה והוספת משתמש לתוכה:</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div style="text-align: left;">
New-DistributionGroup -Name "Test Distribution Group" -members Damian@leidertech.co.il -type Distribution<br />
<br />
<br />
<div style="direction: rtl; text-align: right;">
סקריפט קצר להוספת כמה משתמשים ביחד לרשימת תפוצה מתוך קובץ CSV:</div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
1) ניצור קובץ CSV - מספיק תא אחד ותקראו לו איך שתרצו (עדיף שיהיה נוח)</div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
2) לאחר מכן, פתחו את ה PowerShell ISE בתור מנהל</div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl; text-align: right;">
<br /></div>
<div style="direction: rtl;">
$creds = Get-Credential</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ `</div>
<div style="direction: rtl;">
-Credential $creds -Authentication Basic -AllowRedirection</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
Import-Module MSOnline</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
Connect-MsolService -Credential $creds</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
Import-PSSession $Session</div>
<div>
<br /></div>
<div>
#את החלק הזה צריך לערוך בהתאם למה שאתם צריכים</div>
<div style="direction: ltr; text-align: left;">
$users= import-csv "C:\Users\Leidertech\Desktop\Partners.csv" | ForEach {Add-DistributionGroupMember -Identity "Snitzelim Group" -Member $_.Partners}</div>
<div style="direction: ltr; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
<br /></div>
</div>
</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
<b><u>העברת מייל למשתמש אחר (Email Forwarding):</u></b></div>
<div style="direction: rtl;">
<b><u><br /></u></b></div>
<div style="direction: rtl;">
הגדרת Mail Forword - מומלץ לבצע את הפעולות הבאות על מנת שלא נתבלבל:</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
<ul style="text-align: right;">
<li> מציאת משתמש : *get-mailbox -identety *tsipy</li>
<li>לאחר מכן נעתיק את ה UserPrincipalname</li>
</ul>
<div style="direction: rtl;">
ונדביק באחת מהפקודות הבאות:</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: rtl;">
¿?במידה ואתם <b><u>לא רוצים ש</u></b><u style="font-weight: bold;">ישאיר עותק אל המשתמש שאליו המייל מגיע¿?</u>:</div>
<div style="direction: rtl;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-Mailbox -Identity tsipy -ForwardingSMTPAddress lev@LeiderTech.co.il</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
¿?במידה ואתם <b><u>כן רוצים ש</u></b><u style="font-weight: bold;">ישאיר עותק אל המשתמש שאליו המייל מגיע¿?</u>:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-Mailbox -Identity "User NAme" -DeliverToMailboxAndForward $true -ForwardingSMTPAddress "lev@LeiderTech.co.il"</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: rtl;">
נבצע בדיקה שהכל עבר כמו שצריך:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-Mailbox lev | select UserPrincipalName,ForwardingSmtpAddress,DeliverToMailboxAndForward</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
</div>
<div style="direction: rtl;">
8) ביטול Mail Forwarding:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
set-mailbox -Identity "User Name" -ForwardingSmtpAddress $Null</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
<b><u>עבודה עם Alias:</u></b></div>
<div style="direction: rtl;">
<b><u><br /></u></b></div>
<div style="direction: rtl;">
1) בדיקת האליאס שמוגדר למשתמש: </div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Get-Mailbox lev | select -ExpandProperty emailaddresses | Select-String -Pattern "smtp"</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
2) הוספת אליאס למשתמש:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-Mailbox lev -EmailAddresses @{Add='levvv@leidertech.co.il'}</div>
<div style="direction: ltr;">
<br /></div>
<div style="direction: rtl;">
3) מחיקת אליאס ממשתמש:</div>
<div style="direction: rtl; text-align: left;">
<br /></div>
<div style="direction: ltr; text-align: left;">
Set-Mailbox lev -EmailAddresses @{Remove=’alias@LeideTech.co.il’}<br />
<br />
<div dir="rtl" style="text-align: right;">
<b><u>ניהול רשימת תפוצה\קבוצה מסוג"אופיס365" - אשר נקראות בשפת ה Unified Group" </u></b><b><u>Powershell":</u></b></div>
<div dir="rtl" style="text-align: right;">
<b><u><br /></u></b></div>
<div dir="rtl" style="text-align: right;">
1) הצגת כל רשימות תפוצה\קבוצה מסוג "אופיס365":</div>
<div dir="rtl" style="direction: ltr; text-align: left;">
Get-UnifiedGroup</div>
<div dir="rtl" style="direction: ltr; text-align: left;">
<br /></div>
<div dir="rtl" style="text-align: right;">
2) ביצוע שינוי לרשימת תפוצה\קבוצה מסוג" אופיס365":</div>
<div dir="rtl" style="text-align: right;">
<br /></div>
<div style="text-align: left;">
Set-UnifiedGroup -Identity "HelpDesk Department" -PrimarySmtpAddress helpdesk@leidertech.co.il -RequireSenderAuthenticationEnabled $false</div>
<div style="text-align: left;">
<br /></div>
<div dir="rtl" style="text-align: right;">
<br /></div>
</div>
<div style="direction: rtl; text-align: left;">
<div style="text-align: right;">
3) הוספת רשימת תפוצה\קבוצה חדשה מסוג "אופיס365":</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
New-UnifiedGroup -DisplayName "HR Department" -Alias HR</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
4) מחיקת רשימת תפוצה\קבוצה מסוג "אופיס365":</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Remove-UnifiedGroup -Identity "PR Department"</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
5) הצגת חברות ובעלות של רשימת תפוצה\קבוצה מסוג "אופיס365":</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Get-UnifiedGroupLinks -Identity "PR Department" -LinkType Members</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
6) הוספת חברות לרשימת תפוצה\קבוצה מסוג "אופיס365"</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Add-UnifiedGroupLinks -Identity "Management Department" -LinkType Members -Links uri@leidertech.co.il,shula@leidertech.co.il</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
7) הסרת חברות מרשימת תפוצה\קבוצה מסוג "אופיס365"</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Remove-UnifiedGroupLinks -Identity "Management Department" -LinkType Members -Links uri@leidertech.co.il,shula@leidertech.co.il</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
<b><u>הוספת תמונות למשתמשים באופיס 365</u></b></div>
<div style="text-align: right;">
<b><u><br /></u></b></div>
<div style="text-align: right;">
1) הצגת תמונה של משתמש מסויים:</div>
<div dir="ltr" style="text-align: left;">
Get-UserPhoto "Moshe Cohen"</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
2) תצוגה מקדימה של קובץ שעלה למשתמשת אבל לא נשמר:</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Get-UserPhoto "Moshe Cohen" -Preview</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
3) העלת תמונה למשתמש:<br />
<br />
<div dir="ltr" style="text-align: left;">
Set-UserPhoto -Identity "Shmuel Cohen" -PictureData ([System.IO.File]::ReadAllBytes("C:\Users\Admin\Desktop\Shmuel.jpg"))</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
4) מחיקת תמונה של משתמש:</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Remove-UserPhoto "Simon Cohen"</div>
<div style="text-align: right;">
<br /></div>
</div>
<div style="text-align: right;">
<br /></div>
</div>
<div style="direction: rtl;">
<b>במידה ותרצו ללמוד אודות PowerShell עוד - ניתן למצוא ריכוז מדריכים מתעדכן בעברית: <a href="https://www.leidertech.co.il/p/powershell.html" target="_blank">כאן</a></b></div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com7tag:blogger.com,1999:blog-8431489733818004346.post-39807091231539605572018-11-25T10:51:00.004+02:002021-01-23T16:10:17.314+02:00מדריך ל PowerShell בעברית חלק 2 - מיונים, מודלים ו-Alias.<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBpVjmuzxIKNGdOZMQtS5d5-Lou2ArCV-yXO5TkwXGDyEIEci51MX6LCJlAklKDrbVp9Ayo8HwZJhw0rsTjFaXy8Ijp0riEcfxyTHIn5py6B_G5ipzHlLL2kZa72BYfmS8H6jVrQFydqc/s1600/Untitled.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="277" data-original-width="287" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBpVjmuzxIKNGdOZMQtS5d5-Lou2ArCV-yXO5TkwXGDyEIEci51MX6LCJlAklKDrbVp9Ayo8HwZJhw0rsTjFaXy8Ijp0riEcfxyTHIn5py6B_G5ipzHlLL2kZa72BYfmS8H6jVrQFydqc/s1600/Untitled.png" /></a></div>
<br />
גולשים יקרים,<br />
ראשית אני מתנצל שלקח לי זמן עד שעלה החלק השני של המדריך, קיבלתי המון תגובות חיוביות אפילו יותר ממה שציפיתי, מה שרק הוכיח לי עד כמה חסר ידע בעברית.<br />
<br />
אל תמשיכו לקרוא את החלק הזה של המאמר כל עוד לא עברתם על החלק הראשון -<br />לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div dir="rtl" style="text-align: right;" trbidi="on"><br /></div><div dir="rtl" style="text-align: right;" trbidi="on">לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a><br />
<br />
<br />
<u>אז ללא יותר מדי חפירות, נתחיל.</u><br />
<u><br /></u>מאמר זה שהוא החלק השני של המדריך,נלמד לבצע מיון לפלט, נלמד אודות מודלים, ה- PipeLine ומה הם Aliases ב-Power Shell.<br />
<br />
ה - Power Shell – מצויין למיונים, אפשר לבצע סינון עד לרמת אובייקט, תתארו לעצמכם שבפקודה אחת אתם יכולים לשלוף Event מתוך רשימה של 200-לוגים וגם לקרוא את הכל באותו חלון של שורת הפקודה, ולכן אנחנו נלמד את האופרטורים (Operators) שהם לצורך סינון (Filter) ומיון, נעבור אל Pipeline מאפשר לנו לשרשר פקודות ממש כמו "פס יצור" שמריץ מוצרים וכל תחנה עושה בו שינוי כזה או אחר, וכמובן נלמד קצת על מודולים.<br />
<br />
<br />
<div style="text-align: center;">
<b><u>מיונים, מיונים, מיונים</u></b></div>
1) Format-Table.<br />
<u><br /></u>
<u>Format-table</u> – היא, כשמה כן היא, פקודה שממיינת לכם את הפלט בצורת טבלה, אם אני מציג תוכן רב הייתי רוצה לראות אותו בצורה שאני אצליח לקרוא אותו, אז אני אצטרך להעביר את הפקודה דרך ה PipeLine (עליו נרחיב בפסקה יעודית לנושא בהמשך המאמר), לתוך format-table לדוגמא get-service |format-table ואם אני רוצה שהמערכת תתאים את התצוגה למסך שלי ותיתן לי לקרוא את הפלט בצורה נוחה יותר, אני יכול להוסיף בסוף את <br />
הפרמטר “autosize-”<br />
<br />
ללא פרמטר AutoSize:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEnuJSPYtUrBUlOlk8sNL-dumnw956V9BTfPzBlvn7qtZKAJKkIFPNQFjRWOiZMeT3ZwUpHVSvBB3OK9Wtb5j6YzA72dRZcgK3i1AbCLQtI22ZPGV4VdBt4rXeXdJkTbjA0XvQxp1iQT4/s1600/format-table_1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="203" data-original-width="575" height="140" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEnuJSPYtUrBUlOlk8sNL-dumnw956V9BTfPzBlvn7qtZKAJKkIFPNQFjRWOiZMeT3ZwUpHVSvBB3OK9Wtb5j6YzA72dRZcgK3i1AbCLQtI22ZPGV4VdBt4rXeXdJkTbjA0XvQxp1iQT4/s400/format-table_1.png" width="400" /></a></div>
<br />
עם פרמטר AutoSize:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiHLt3cneZnUCEqtYuEcOIB6njcTABEqhW4gcSK3io3b5EV5WQzXiiaSo_-bYSgfYqOujeASx4wXg3Kd0k0XtdPsx_2AMDtkJFH3kxsT6JaXUcq8azqxSn_txfXIvJeFH3PaVq9NzgqZI/s1600/format_table_2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="209" data-original-width="762" height="108" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiHLt3cneZnUCEqtYuEcOIB6njcTABEqhW4gcSK3io3b5EV5WQzXiiaSo_-bYSgfYqOujeASx4wXg3Kd0k0XtdPsx_2AMDtkJFH3kxsT6JaXUcq8azqxSn_txfXIvJeFH3PaVq9NzgqZI/s400/format_table_2.png" width="400" /></a></div>
<br />
שימו לב לרווחים שנוצרו בין העמודות, כעת הפריסה הרבה יותר מתאימה למסך (במקרה זה למסך שדרכו אני פתחתי את חלון ה Power Shell).<br />
<br />
<br />
2) Sort-Object.<br />
<u><br /></u>
<u>Sort-object</u> - מיון של אובייקטים לפי מצב או לפי עמודה (property) מסוים, לדוגמא, הריצו את הפקודה get-service, אתם תראו שתקבלו המון מידע, אבל מה קורה אם אני רוצה לראות את זה בצורה מסודרת, לפי מה פעיל ומה לא פעיל?<br />
<div>
<br /></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyC90cNm_KqXk9xwCWb8qGhzp_lrk19MGJ7uqpQjrXKlNJWfyzU0FPKSFUB_o2bs6U8zj52F-8XM-PIo8U5Px2C5dCn3rh6e7KARp0FDOq39kPovNJlszAfO0uHdXoSPYqji5rvjgaDaE/s1600/sort-object.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="245" data-original-width="626" height="156" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyC90cNm_KqXk9xwCWb8qGhzp_lrk19MGJ7uqpQjrXKlNJWfyzU0FPKSFUB_o2bs6U8zj52F-8XM-PIo8U5Px2C5dCn3rh6e7KARp0FDOq39kPovNJlszAfO0uHdXoSPYqji5rvjgaDaE/s400/sort-object.PNG" width="400" /></a></div>
<br />
<br />
<br />
3) Group-Object<br />
<u><br /></u>
<u>Group-object</u> – ניתן לקבל פלט ולמיין את הפלט לפי קבוצה, לדוגמא נמיין את הסרוויסים שלנו לפי סטטוס בלבד: Get-Service|Group-Object -Property Status<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsHFHG1CONuZ6aJroT9XZ86kKi9zmsI2jJzFrWQwG4nxlcsTquIYWilFta4LYmSZbsY7I926YJeIcfNOVOmtHpjHafd4fwOim5cTZyM1VpUdvrfYVG_G_U4Fcrm0qnOmxlLL1zoGI72i8/s1600/group_object.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="220" data-original-width="885" height="98" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsHFHG1CONuZ6aJroT9XZ86kKi9zmsI2jJzFrWQwG4nxlcsTquIYWilFta4LYmSZbsY7I926YJeIcfNOVOmtHpjHafd4fwOim5cTZyM1VpUdvrfYVG_G_U4Fcrm0qnOmxlLL1zoGI72i8/s400/group_object.png" width="400" /></a></div>
<br />
<div>
4) Where-object.</div>
<div>
<div>
<u><br /></u></div>
<div>
<u>Where-Object</u> - מדובר במסננת לכל היותר, בעזרת הפקודה הזאת אפשר לבצע סינון של Property שמתקבלים מתוך הפייפליין (אנחנו נלמד עליו בפיסקה הבאה).</div>
<div>
<u>Where-object</u> הינה פקודת סינון תוצאות או תצוגה (תקראו לזה איך שנוח לכם, העיקר שתזכרו את זה), לצורך דוגמא נריץ את הפקודה get-hotfix (פקודה שמציגה לנו עדכוני מערכת, כרגע לא משנה הסדר שבו זה יוצג או האם זה רלוונטי או לא) כמובן שנקבל המון מידע:</div>
</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsEGM4PUQ7MF8j8evM7S7rtRTArAHhi6tTenz4Uw0DaIOz-VEH6F5OJseBZDFQhaXecQju48Ufm2QkRSLKohlaW9Q0CPKlgXqaH8oXIWRyIGt2MMlWZUD50DD918w-JbVAMZAn2N4dwsE/s1600/where-object_1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="331" data-original-width="991" height="132" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsEGM4PUQ7MF8j8evM7S7rtRTArAHhi6tTenz4Uw0DaIOz-VEH6F5OJseBZDFQhaXecQju48Ufm2QkRSLKohlaW9Q0CPKlgXqaH8oXIWRyIGt2MMlWZUD50DD918w-JbVAMZAn2N4dwsE/s400/where-object_1.png" width="400" /></a></div>
<div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">את הפקודה הזאת ניתן להריץ ב-2 דרכים, האחת פשוטה וברורה יותר לאדם
והשניה יותר מסובכת ומצריכה מאתנו לזכור כמה פרטים, בנוסף בדרך השניה ניתן לבצע
צירוף של אלמנטים ופרמטרים ופשוט לבצע "פילטור" של תוצאות בצורה יותר
יעילה, אנחנו נראה את שתי הדוגמאות הללו עכשיו:<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">נתחיל עם הדרך הפשוטה: *</span>Get-hotfix |where-object hotfixid
–like kb44</div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">הפרוש של הפקודה היא "הצג לי את כל עדכוני המערכת שמתחילים ב </span><span dir="LTR">Kb44</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>" ובהתאם לכך בעצם גם התוצאה:<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7CsdIdB58NBfzfcqlf1DKareSYCqR663r5brX2-Kc9xJ1gFcPl5F4qhJ8v2oFvBUOkIDI3HPdECUv-476-PoHNptXzyJMYrf8HqQBbZzfPq9Xycc2xhj5g3MvLovqAOwRUK-YUD5ZaFs/s1600/where-object_2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="220" data-original-width="664" height="132" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7CsdIdB58NBfzfcqlf1DKareSYCqR663r5brX2-Kc9xJ1gFcPl5F4qhJ8v2oFvBUOkIDI3HPdECUv-476-PoHNptXzyJMYrf8HqQBbZzfPq9Xycc2xhj5g3MvLovqAOwRUK-YUD5ZaFs/s400/where-object_2.png" width="400" /></a></div>
<div class="MsoNormal" dir="RTL">
<br /></div>
</div>
<div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">עוד דוגמא ל </span><span dir="LTR">where-object</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>:<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">נגיד ואנחנו רוצים לראות את הפרוססים שרצים לנו במערכת, נריץ את
הפקודה </span><span dir="LTR">get-process</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> וכמובן שנקבל המון מידע,
לדוגמא:<o:p></o:p></span></div>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMZePLMaJdCpKP0fzrUId05INMXvZm_VBpaFPSLwSiXz6H7syUs3xCjcjqjiF3yOMEAD29x44Sqz4qY97ChT8MfZ5UgC4_vo-c6EkV8HXLrdgA6adTcKJ_IHEClnZwyEv54qJA8O-8lRk/s1600/where-object_3.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="367" data-original-width="730" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMZePLMaJdCpKP0fzrUId05INMXvZm_VBpaFPSLwSiXz6H7syUs3xCjcjqjiF3yOMEAD29x44Sqz4qY97ChT8MfZ5UgC4_vo-c6EkV8HXLrdgA6adTcKJ_IHEClnZwyEv54qJA8O-8lRk/s400/where-object_3.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both;">
ואני מעוניין לראות נגיד רק את הפרוססים של הכרום:</div>
<div class="separator" style="clear: both;">
'*Get-process | where-object Processname –like '*chrome</div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
• חשוב לזכור, את הסינון ניתן לעשות לפי כל עמודה שמופיעה, כמו כן, ישנן עמודות גם שלא מופיעות על מנת שנוכל לראות עד אפשרויות לסינון, נריץ את get-process דרך Get-member ואז נוכל לראות לפי אילו עוד אפשרויות ניתן לבצע סינון, מאחר והרשימה היא מאוד ארוכה (ניתן לראות Property וגם Methods שניתן להשתמש בהן) אני לא אצלם כאן את המסך, עדיף שתנסו לבד.</div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
• עוד טריק שמראה עד כמה בנו את ה Power Shell בצורה חכמה, לאחר שהקלדתםWhere-object אם תתחילו ללחוץ על TAB תקבלו את אפשרויות שלפיהן אפשר יהיה לסנן – מאוד נוח כשלא בטוחים.לאחר שהרצנו את הפקודה, נקבל רשימה של כל הפרוססים שהם כרום:</div>
<br />
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuSwnaeIK7XBenvLc0M6UjnqQ4apLIyK1t9FwwkFHhjaRynBTs0KQCYtJ920b3z05hnT-OffcIIG7cAi6JZPGoFeddVczP6EtR0-Yr3aK44K1Py0AdW32_VcVby5gErClSvnhUvpP12KA/s1600/where-object_4.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="274" data-original-width="788" height="138" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuSwnaeIK7XBenvLc0M6UjnqQ4apLIyK1t9FwwkFHhjaRynBTs0KQCYtJ920b3z05hnT-OffcIIG7cAi6JZPGoFeddVczP6EtR0-Yr3aK44K1Py0AdW32_VcVby5gErClSvnhUvpP12KA/s400/where-object_4.png" width="400" /></a></div>
<div>
<br /></div>
<div>
<div>
ישנן כמה דרכים להשתמש בפקודה where-object, האחת היא הפשוטה (יותר ברורה לאדם) והשניה היא יותר מסובכת אבל כעקרון יותר "אפקטיבית" למחשב ומאפשר לשרשר פקודות בצורה יותר טובה, איתה גם ניתן לשרשר פקודות בצורה יותר יעילה:</div>
<div>
{'*Get-process | where-object –filterscript {$_.processname –like '*chrome<br />
<br />
הסימן "_$" - מיצג כל אובייקט בתורו, זאת אומר מאחר ואנחנו מריצים פקודה שתיתן לנו רשימה של מלא פרוססים, אז אנחנו רוצים להעביר בתוך הפקודה שלנו כל פרוסס בתורו, ניתן לרשום גם PSItem$ ונקבל את אותה התוצאה זאת אומרת הפקודה תראה כך:<br />
<br />
{'*Get-process | where-object –filterscript {$PSitem.processname –like '*chrome<br />
<br /></div>
<div>
במקרה זה נקבל את אותה התגובה מהמחשב.<br />
<br /></div>
<div>
<u>לידע כללי:</u><br />
להמון פקודות ב – PowerShell יש אליאס (כינוי) שניתן לרשום בצורה שונה, בשביל שנוכל לראות את כל ה Alias שיש ל Power Shell להציע, נריץ את הפקודה get-alias, כמובן שנקבל פלט ענק ששם נוכל לראות את כל הרשימה, במקרה של where-object נקבל 2 קיצורים לפקודה, האחד where והשני "?" </div>
<div>
(בהמשך המאמר ישנו הסבר קצת יותר מפורט על Aliases)</div>
</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjInSsK2u9Lz58Nv5wFImjwDKdHcIl-pkjP4-KYLPU-o2mciY08aTouFpuxZCwxIVHByjAgEph_Te8gwgEeDIGBmKmia3Yz_dUZNl4LQDDpk8wPugC3e-8PuBUpj3lD6ISpg-tpBRc_sx8/s1600/where-object-get-alias1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="158" data-original-width="414" height="152" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjInSsK2u9Lz58Nv5wFImjwDKdHcIl-pkjP4-KYLPU-o2mciY08aTouFpuxZCwxIVHByjAgEph_Te8gwgEeDIGBmKmia3Yz_dUZNl4LQDDpk8wPugC3e-8PuBUpj3lD6ISpg-tpBRc_sx8/s400/where-object-get-alias1.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGH5KMEseuIHvGJX9T1E3MMVf7Gv4W1XiGdd0_UzkAzRllMAGkFPQh3Z1yXu5LafKqyWgVqPRLdtCK6CKEZJcYmn8bTh4mc1oBGNc3bK0RJE79CGJkf5FqR86w_yP4TouWnOp8nhYsyiI/s1600/where-object-get-alias2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="29" data-original-width="364" height="25" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGH5KMEseuIHvGJX9T1E3MMVf7Gv4W1XiGdd0_UzkAzRllMAGkFPQh3Z1yXu5LafKqyWgVqPRLdtCK6CKEZJcYmn8bTh4mc1oBGNc3bK0RJE79CGJkf5FqR86w_yP4TouWnOp8nhYsyiI/s320/where-object-get-alias2.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">זאת אומרת את הפקודה היותר פקודה של </span><span dir="LTR">where-object</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> אפשר יהיה לכתוב בצורה
הזאת:<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span dir="LTR">get-process |? Processname –like '*chrome*'<br />
</span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">ונקבל את אותו הפלט:<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiklhd6VBW35zMrUxcTxiw70FyHDIiNHkPUDOn_2DRKujMWGEnCy6WZjUh_7Jl7mBspsRfbihHoB06Nxs7r0UFsafAEwYXrqL5oG_KEvMT0QyY_lBy76IkYMGc_d044H3zCP3J-tDZqfd0/s1600/where-object-get-alias3.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="179" data-original-width="650" height="110" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiklhd6VBW35zMrUxcTxiw70FyHDIiNHkPUDOn_2DRKujMWGEnCy6WZjUh_7Jl7mBspsRfbihHoB06Nxs7r0UFsafAEwYXrqL5oG_KEvMT0QyY_lBy76IkYMGc_d044H3zCP3J-tDZqfd0/s400/where-object-get-alias3.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">בהמון מקרים ברשת, תתקלו במצבים בהם אנשים לא משתמשים בפקודות הרגילו
אלה דווקא בקיצורים (באנגלית </span><span dir="LTR">Abbreviations</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>) ככה שמאוד כדי לזכור את
הפקודה הזאת שפשוט תפרש לכם מה המשמעות של הפקודה שאתם מנסים להבין.<o:p></o:p></span></div>
<div class="separator" style="clear: both;">
</div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">ישנן המון אפשרויות לסינון, המסננים נקראים </span><span dir="LTR">Comparison
Operators</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>, ניתן לקרוא עליהם ברשת ובחיפוש ב </span><span dir="LTR">Power
Shell</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>, עדיף כמובן ברשת על ידי ביצור חיפוש של <br />
</span><span dir="LTR">About Comparison Operators</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>.<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL" style="text-align: center;">
<span dir="RTL"></span><span dir="RTL"></span><b><u><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>"הצינור" – </span></u></b><b><u><span dir="LTR">PipeLine</span></u></b><b><u><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><o:p></o:p></span></u></b></div>
<div class="MsoNormal" dir="RTL" style="text-align: center;">
<b><u><span dir="LTR"><br /></span></u></b></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">לא אני לא עושה שום פרסומת לתוכנית בערוץ 10, למי שיצא לעבוד עם </span><span dir="LTR">Linux</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> מכיר את ה"</span><span dir="LTR"></span><span dir="LTR"></span><span dir="LTR"><span dir="LTR"></span><span dir="LTR"></span> PipeLine</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>" טוב מאוד, הסימון
שלו הוא "|" והוא נמצא בדרך כלל מעל מקש ה</span><span dir="LTR"></span><span dir="LTR"></span><span dir="LTR" lang="HE"><span dir="LTR"></span><span dir="LTR"></span>
</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span><span style="mso-spacerun: yes;"> </span></span><span dir="LTR">Enter</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> אצלכם, אם תלחצו על </span><span dir="LTR">Shift</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> ועל המקש הזה תקבלו את ה"</span><span dir="LTR">PipeLine</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>", בגדול מה שזה
מאפשר לעשות הוא לשרשר פקודות, זאת אומרת אם אני רוצה לדוגמא לראות אילו עמודות
אני יכול לראות כשאני מריץ את </span><span dir="LTR">get-process</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>, אני "אעביר"
אותו דרך "צינור" לפקודת ה </span><span dir="LTR">get-member </span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span><span style="mso-spacerun: yes;"> </span>ואז אוכל לראות את כל הפעולות שאני יכול לעשות
עם האובייקטים שיוצגו, כולל עמודות (</span><span dir="LTR">Property</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>) שאני יכול להציג,
ו"</span><span dir="LTR">Methods</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>" (נלמד עליהם בהמשך) וכמובן גם ה </span><span dir="LTR">Aliases</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> המתאימים.<br />
<span style="mso-spacerun: yes;"> </span><br />
הפקודה נראית כך </span><span dir="LTR">get-process |get-member</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> <span lang="HE"><br />
<br />
מאחר והפלט הוא מאוד ארוך, אציג כאן רק חלק<o:p></o:p></span></span></div>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-eWLh981Ug5inhVqC4FXLZHQhn7o6x0j2fPmVAOiDlF6OUgsINkNHqByAPKMCEyOGCrAX5Kz6rZ6iWDi75HgbljSkMT31ZuWsIZ_xHvyKSqUlf2arirFrgcodDrSHbe1jd1vlWJyJFWI/s1600/pipeline1.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="133" data-original-width="630" height="83" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-eWLh981Ug5inhVqC4FXLZHQhn7o6x0j2fPmVAOiDlF6OUgsINkNHqByAPKMCEyOGCrAX5Kz6rZ6iWDi75HgbljSkMT31ZuWsIZ_xHvyKSqUlf2arirFrgcodDrSHbe1jd1vlWJyJFWI/s400/pipeline1.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
<div>
משימה שניה: נסו לחשוב על פקודות שיכולות להציג לכם פלט עם הרבה מידע ורשימות כמו רשימת ה – Process ורשימת ה-Services והעבירו אותם דרך ה-Pipeline לפקודה format-table –autosize.</div>
<div>
<br /></div>
<div>
לדוגמא, פקודה להצגת עדכוני מערכת, אני ארצה להציג אותם בצורה של טבלה ובשביל לראות את הכל בצורה שמתאימה <br />
למסך שלי, אני גם ארצה שה Power Shell יתאים את זה לתצוגה שלי:</div>
<div>
בשביל להציג עדכוני מערכת נשתמש ב-CmdLet שנקרא get-hotfix וכפי שנתנו דוגמא במשימה, נשתמש ב CmdLet שנקרא format-table ונגיד לו תתאים לבד את התצוגה בעזרת הפרמטר "-autosize"</div>
</div>
<div>
<br /></div>
<div>
מבנה הפקודה: get-hotfix –computername localhost|format-table –autosize</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxF3vi223qfQ7dzzeGW2oBi2_QfDG1hMgJZME5losm1BWoJ98OMKKSdVCg19SEdziL3-ClQjvlClV8GoEJHCKIFKr44lWQ-0d79AD70Dx1b_O_xTzzb4rB8Un-k_q7JEoUmWCDEU33McI/s1600/pipeline2.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="133" data-original-width="630" height="83" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxF3vi223qfQ7dzzeGW2oBi2_QfDG1hMgJZME5losm1BWoJ98OMKKSdVCg19SEdziL3-ClQjvlClV8GoEJHCKIFKr44lWQ-0d79AD70Dx1b_O_xTzzb4rB8Un-k_q7JEoUmWCDEU33McI/s400/pipeline2.PNG" width="400" /></a></div>
<div>
<div>
<br /></div>
<div>
<br /></div>
<div style="text-align: center;">
<b><u>Alias </u></b><br />
<b><u><br /></u></b></div>
<div>
כן, גם כאן יש לנו Alias (כינוי) שבעצם אפשר להשתמש בו לדוגמא, אם אני רוצה לעשות העתקה של קובץ אז אני יכול להשתמש ב Cmdlet "copy-item" אבל אני יכול להשתמש גם ב"cp" (השתמשתם ב –Linux פעם? אז כן, זה אותו הדבר כמו שם) אם תרצו לראות את כל ה-Aliases תוכלו להריץ את הפקודה Get-alias (לא משנה אם זה באותיות גדולות או קטנות) ותקבלו רשימה של כל ה Aliases שיש ב Power shell בהתאם ל Module שמותקים אצלכם ב Power Shell.</div>
<div>
<br /></div>
<div>
אם אני רוצה לסנן ולראות את כל פקודות ה-Get, אני יכול להריץ get-alias g* ואז אקבל את כל הפקודות שמתחילות ב Get שזה בעצם כל ה-CmdLets.</div>
<div>
<br /></div>
<div>
אם אני רוצה לקבל קיצור של איזושהי פקודה אני יכול להריץ get-alias -definition get-process ואז אקבל בדיוק את המידע שאני צריך, כמו כאן בדוגמא, רציתי לברר מה ה- Alias של get-process אז אני בעצם "שואל" את ה Power Shell והינה הפלט:</div>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaeKbV1iJQeWeSqw3X14n6PblMVZjXY-JsynyfHQ3f9zG0Tlv71SvKGHdclhXXkIvP6DVYenT-hBmh9bwCOJbI__Qz-fiiGeExyAKNNAlmGK9WaUxL-m3YkTxO8I6DWvaWnLPc6TOwTY8/s1600/Alias_2.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="133" data-original-width="630" height="83" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaeKbV1iJQeWeSqw3X14n6PblMVZjXY-JsynyfHQ3f9zG0Tlv71SvKGHdclhXXkIvP6DVYenT-hBmh9bwCOJbI__Qz-fiiGeExyAKNNAlmGK9WaUxL-m3YkTxO8I6DWvaWnLPc6TOwTY8/s400/Alias_2.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">במידה ואני רוצה לקבל </span><span dir="LTR">Alias</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span> של פרמטר מסויים (נגיד
ואני רוצה לדעת מה הקיצורים של כל הפרמטרים של הפקודה </span><span dir="LTR">Get-process</span><span dir="RTL"></span><span dir="RTL"></span><span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><span dir="RTL"></span><span dir="RTL"></span>), אני אריץ את הפקודה
הבאה:<br /><br /><o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span dir="LTR"></span><span dir="LTR"></span><span dir="LTR"><span dir="LTR"></span><span dir="LTR"></span>(Get-Command
Get-Process).Parameters.Values| Where-Object aliases |Select-Object
name,aliases<o:p></o:p></span></div>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkhVfO5raWDMHHXrjiuI6s9NEwlYtmat7C3ReR0SPLonKX_EaIjVFut_bWSUQTWPMiELwiQ0H6TCRT8i64udlK4S-7CJ8BQIPOsO2fC3fsyd9unWwG1VBopIl-WWjd76T_rf1kJS3qKBg/s1600/Alias_3.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="423" data-original-width="1025" height="163" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkhVfO5raWDMHHXrjiuI6s9NEwlYtmat7C3ReR0SPLonKX_EaIjVFut_bWSUQTWPMiELwiQ0H6TCRT8i64udlK4S-7CJ8BQIPOsO2fC3fsyd9unWwG1VBopIl-WWjd76T_rf1kJS3qKBg/s400/Alias_3.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;">בסופו של יום, הכל עניין של פשוט לדעת כיצד לחפש, בצורה הזאת תקבלו את
כל הפקודות שאתם צריכים לצורך תחילת עבודה, אני מבטיח לכם שעם הזמן והתרגול,
הדברים יתחילו להיות לכם הרבה יותר קלים.<o:p></o:p></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif" lang="HE" style="mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin;"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><b><u><br /></u></b></span></div>
<div class="MsoNormal" dir="RTL" style="text-align: center;">
<span face="arial, sans-serif"><b><u>Modules</u></b></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><b><u><br /></u></b></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif">מודלים הם בעצם "תוספים" שמאפשרים לכם לעבוד עם Power Shell בהתאם למה שאתם מעוניינים לעשות, כל Module מוסיף רשימה של פקודות ופונקציות כאלה ואחרות, לדוגמא בשביל לנהל את </span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif">ה- Active Directory דרך Power Shell, נצטרך מודול שנקרא Active Directory Module שיהיה מותקן לכם כחלק מ RSAT או שכמובן יהיה מותקן על שרת ה DC עצמו.</span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif">בשביל לראות אילו מודלים מותקנים לנו ב Power Shell נריץ את הפקודה:</span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif">Get-Module –ListAvailable</span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif">תיקחו בחשבון שתקבלו רשימה מאוד ארוכה כמובן, מכיוון שישנם הרבה מודולים שמותקנים אצלכם</span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><br /></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><span lang="HE"></span></span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif">לאחר שהרצתי את הפקודה על שרת ה DC שלי להלן הפלט:</span></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOW61YoS7Trjky87kJxxIdgNrmMRiBZ36rUhgPKYRFLTdWzzIqQHpfFh6e5qZQwbtZDej1KW0cicaLbKvNOkotgyUdyh3-JwLMJBkl0r-Tq0sWox-fbcyPWWSCFUml_deOgEHGoFn_tok/s1600/modules.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="158" data-original-width="625" height="100" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOW61YoS7Trjky87kJxxIdgNrmMRiBZ36rUhgPKYRFLTdWzzIqQHpfFh6e5qZQwbtZDej1KW0cicaLbKvNOkotgyUdyh3-JwLMJBkl0r-Tq0sWox-fbcyPWWSCFUml_deOgEHGoFn_tok/s400/modules.PNG" width="400" /></a></div>
<div class="MsoNormal" dir="RTL">
<span face="arial, sans-serif"><br /></span></div>
</div>
<div>
<br /></div>
<div>
<div>
כפי שניתן לראות, מודול ה Active Directory מותקן על שרת ה DC מה שיאפשר לי לנהל אותו משורת הפקודה.</div>
<div>
<br /></div>
<div>
שימו לב - גירסה יותר עדכנית, תביא איתה יותר פקודות</div>
<div>
<br /></div>
<div>
ב Power shell האחרון שהוא בגירסה 5.1 ישנו סט מאוד גדול של פקודות שנוסף מאז הגירסה הראשונה ולכן כדי לעדכן לגירסה האחרונה (בשביל לבדוק את הגירסה המותקנת אצלכם, הריצו את הפקודה: host</div>
<div>
להלן הפלט :</div>
</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhClag12RjxdihjBmXtCH5nXP6_KvUsDH1-2UGM8oCvwsoN353kgejkIikeLkImajGhopCKbsgNvIjfVxyhCZdPM4-7lkHMllecfR_c2xU5nAbwfRO8mOweMWH1CvbI9toVMFQ8yyCkvfY/s1600/modules_2.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="220" data-original-width="637" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhClag12RjxdihjBmXtCH5nXP6_KvUsDH1-2UGM8oCvwsoN353kgejkIikeLkImajGhopCKbsgNvIjfVxyhCZdPM4-7lkHMllecfR_c2xU5nAbwfRO8mOweMWH1CvbI9toVMFQ8yyCkvfY/s400/modules_2.PNG" width="400" /></a></div>
<div>
<br /></div>
<div>
<br />
ניתן לעדכן לגרסת ה- Power Shell מהאתר הרשמי של מיקרוסופט: <a href="https://www.microsoft.com/en-us/download/details.aspx?id=54616" target="_blank">PowerShell 5.1</a><br />
<br />
חשוב לזכור, כל עוד לא תכריחו את עצמכם לעבוד עם ה-Power Shell לא תצליחו להתמודד עם המעבר, כמו כל דבר בחיים גם כאן צריך תרגול על מנת שנוכל להתרגל לצורת העבודה של השפה.<br />
<br />
<br />
<br />
<div dir="rtl" style="text-align: center;" trbidi="on">
<iframe allowfullscreen="" frameborder="0" height="270" src="https://www.youtube.com/embed/OVqmHB5hqMU" width="480"></iframe></div>
<br />
<br />
<br />
עד כאן להפעם.<br /><br /></div><div>לכלל הפוסטים והמדריכים בנושא ה PowerShell ניתן למצוא <a href="https://cutt.ly/jjULliR" target="_blank">כאן</a></div><div>לפורום בנושא באתר devhub.co.il <a href="https://devhub.co.il/boards/forum/123-powershell/" target="_blank">כאן</a></div><div>
<br />
לשאלות המייל שלי :<br />
levl@leidertech.co.il<br />
<br />
<br />
<br />
<br />
<br /></div>
<div>
<br /></div>
</div>
Lev Leidermanhttp://www.blogger.com/profile/01567428261622640408noreply@blogger.com2