
dir /b /s /ad, כאשר /b מציג רק את השם, /s כולל תתי-תיקיות, ו-/ad מציג רק תיקיות. הפלט נשמר לקובץ טקסט בעזרת >, למשל mydir.txt.D: ב-C: בעורך טקסט לפני השימוש.type היא כינוי ל-Get-Content, ו-md הוא כינוי ל-mkdir. PowerShell מגדיר כינויים לפקודות DOS ישנות, כדי שהמעבר יהיה פשוט יותר.Get-Content mydir.txt | ForEach-Object { md $_ }md. $_ מייצג את השורה הנוכחית. בדמו זה נעשה בשורה אחת, במקום יצירת כל תיקייה ידנית.dir /b /s /ad מפיקה את רשימת התיקיות, ForEach-Object מבצע פעולה על כל שורה בצינור, וכינויים מסייעים למי שבא מ-DOS.הטקסט המלא של הדקות הראשונות בהרצאה «פקודת Foreach» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום וברוכים הבאים לסרטון קצר על פאוור של איך אני יכול להעתיק מבנה היררכי של תיקיות, יש לי הרבה פולדרים, הרבה תיקיות בארדיסק ואני צריך להעתיק את כל התיקיות האלו למקום אחר, אבל מה?
בלי מידע, בלי תוכן, רק את המבנה של התיקיות. למה? כי החלטתי להעביר שרת משרת ישן לחדש, אבל את המידע שהיה בשרת הישן אני משאיר שמה. בשרת החדש אני רוצה רק את התיקיות הריקות ויש שם מלא מלא תיקיות.
איך לעשות דבר כזה זאת משימה אמיתית שהייתה לי ואמרתי אני אשתף אתכם ואנחנו הולכים לעשות את זה בעזרת פאורשייל כן זוכרים את הפאורשייל יפה אז אנחנו לא צריכים אקטיב דרקטורי אנחנו צריכים פאורשייל רגיל יופי אבל לפני שאנחנו נתחיל להריץ פה פקודות בפאורשייל צריך שצריך ללכת לשרת הישן ולקחת משם את התיקיות
אז עשיתי רימור דסקטופ לשרת הישן ויש לי פה בשרת הישן בעצם זה שרת של המצלמות וזה בעצם מעקב אחרי סרטים של תלמידים, כן? זאת אומרת, כל אחד פה, הפרצוף של התלמיד שלומד, שלא יגנוב את הסרטים ולא יעביר את זה לחבר שלו.
ובתוך תיקיה יש שתי תיקיות. אז אני פותח CMD, ואני פותח CMD, ואנחנו רואים פה בעצם, זה D.2, CD Laptops, רקורד, ועושים דיר, יפה.
עכשיו אני רוצה את הדיר הזה, אני רוצה את הדיר הזה, שימו לב מה אני רוצה לעשות. אני רוצה לעשות דיר סלאש בי, מה עושה דיר סלאש בי?
דיר סלאש בי מראה לי את אותן התיקיות רק בלי מידע מסביב אוקיי? דיר סלאש בי סלאש אס מראה לי סאב דירקטוריס כי לכל תיקיה יש תת תיקיה. הנה אני רואה פה שלכל תיקיה יש תת תיקיה אבל מה הוא מראה לי הוא מראה לי גם את הקבצים אוקיי סלאש בי הראה לי מידע גולמי עוד פעם דיר רגיל מראה לי שזה דירקטורי באיזה שעה זה נוצר באיזה יום זה נוצר
מתי זה נוצר ודברים כאלו אני עשיתי סלאש בי כדי שיראה לי רק את התיקיות סלאש אס כדי שיראה לי רק את התתי תיקיות גם תתי תיקיות אבל אני לא רוצה קבצים אז אני עושה סלאש אני כבר לא זוכר מה עושים סימן שאלה ובסימן שאלה אנחנו יכולים לראות שיש לנו דיספליי פיילס רק דירקטוריסט או רק hidden או רק סיסטם כאילו מאפיין של הקובץ אז אני עושה סלאש אדי אוקיי
רק קבצים או תיקיות עם אטריביוט מסוים מה האטריביוט? דיירקטורי. האמת שזכרתי, רק רציתי להראות לכם שזה סימן שאלה.
יפה. עכשיו באמת יצא לנו פה רשימה של כל התיקיות ותתי תיקיות ללא קבצים. זאת בדיוק המטרה. עכשיו את הרשימה הזאת אני רוצה לא במסך, אני עושה חצי ימינה. חצי ימינה עושה לו פלט למקום אחר.
ככה היו מדפיסים בימים של דוס. בימים של דוס היו עושים חצי ימינה, כותבים lpt1 והיו מדפיסים לאיזה lpt1 או משהו כזה. אבל אנחנו כבר לא מדפיסים ל-LPT1, שזה החיבור הגדול הזה, אז אנחנו עושים בעצם לתוך קובץ שנקרא mydir.txt אז בעצם אני פולט הכל
החוצה לתיקי הקובץ mydir.txt, שימו לב, אין פלט, למה? כי הוא הלך לקובץ, זה ה-output החוצה, יופי. קיבלנו בסופו של דבר פה, כי היינו בתיקי הזאת, עמדנו בתיקי הזאתי קובץ שנקרא mydir.txt עם רשימה של כל התיקיות שלנו הופה יפה מאוד עכשיו אני עושה לו רייטם זה בדיוק זה זה התיקיות
שרציתי להעתיק וכולל תתי תיקיות והכל יופי עכשיו אני לוקח את כל הקובץ הזה מעביר אותו למחשב החדש לשרת החדש במקרה שלי אני אדגים את זה על הלפטופ שלי בשביל כי בשרת החדש כבר עשיתי את זה אז אני אעשה את זה בעצם על הלפטופ שלי על המחשב שלי ונעביר את זה פה ל-C, אני יודע מה, נשים את זה ב-C.
אין אישור, יוזרס, איפה אני יכול לשים, הנה, יש לי אינסטול בלפטופ, נעתיק את זה לשם, יופי.
עכשיו, אין לי D, אז אני אעשה לו פה עריכה, החלפה, ואומר לו כל פעם שיש D.2, תחליף את זה ב-C.2. החלף הכל, הופה, החליף את כל ה-D.2 ב-C.2.
פשוט מאוד, בקובץ טקסט, כי אין לי כונן D, יש לי רק ארט דיסק אחד, אז החלפתי c ב-d כדי שהכל יעבוד לי, מצוין, לוקח את הקובץ הזה, אינסטול, תעשה לי קופי פייסט, הנה, נכנסנו לאינסטול ואני עושה לו פייסט, וזה הגיע לפה ל-c אינסטול אצלי בלפטופ, וזאת התחלה כבר טובה, איפה הקובץ הזה,
איפה הקובץ הזה, יש לי פה הרבה זבל פשוט, דיר משהו, נכון, משהו עם דיר, עשינו את זה, איפה הוא?
טוב, בואו ניכנס פה ל-cd אינסטול, דיר, איך קראנו לו? מיי משהו, נכון? מיי נקודה טי אקסטי משהו? הנה, מיי דיר נקודה טי אקסטי.
יופי, אז אנחנו עכשיו אצלי במחשב, שיש לנו קובץ מיי דיר נקודה טי אקסטי, נעשה טייפ. זוכרים טייפ? זו פקודה בדוס שמראה לי את התוכן, אבל בפאורשל אין פקודת טייפ.
פאורשל מבנה פקודה קבוע, כן? זאת אומרת, טייפ יעבוד קודם כל, אבל זה לא נכון, כן? אתם רואים טייפ עבד, הראה לי את התוכן, פעולה מכף אובייקט זה הלוגיקה של כל הפאורשייל מבנה פקודות קבוע אז get content אני כותב ואז אני כותב לו את mydir.txt עושה אותה פעולה שימו לב מה הסוד
שיש אליאס כינוי פה כל הפקודות דוס עברו אליאס כינויים למעשה כשאני כותב פקודת טייפ בפועל זה שורט קאט לפקודה אמיתית שהיא get content זאת הפקודה האמיתית בגלל שכדי להקל על המשתמשים מעבר מ-DOS ל-PowerShell, עשו לנו בעצם אליאס,
כינויים לכל הפקודות הידועות. אז אתם רואים פה, יש פה הרבה מאוד פקודות, גם של לינוקס, גם של מייקרוסופט. אתם רואים, לדוגמה, האחוז הזה זה כמו לעשות for each object, לעבור על כל האובייקטים, אני הולך להשתמש בזה עוד דקה.
cd, להיכנס לתיקייה, שימו לב, זה אליאס ל-setLocation, כי PowerShell חייב מבנה קבוע של פקודה, זו הלוגיקה שלו. cls, clear screen, clear מכב host, כן?
זה הלוגיקה. מה יש לנו? דיר, דיר, דיר זה get children item. זאת אומרת שהדור החדש, הילדים של הילדים שלנו,