מצא את זמן הביצוע הכולל של פקודה או תוכנית ב- Windows - Winhelponline

Find Total Execution Time Command

ייתכן שתרצה למצוא את זמן הביצוע הכולל של פקודה או תוכנית שאתה מפעיל. כדי לייעל את התסריט או התוכנית, חשוב לדעת כמה זמן לוקח להשלמת הביצוע. זה עוזר לך להשוות את זמן הריצה הכולל של תוכנית A לעומת תוכנית B ולייעל את הקוד שלך, במיוחד אם אתה מפתח תוכנה, אנליסט או בודק תוכנה מקצועי.



מדידת זמן הביצוע הכולל של סקריפט או תהליך הוא אחד ההיבטים הקריטיים ביותר באופטימיזציה לביצועים. מאמר זה דן בשיטות שונות למציאת זמן הביצוע הכולל של תוכנית, סקריפט או פקודה ב- Windows.





מצא את זמן הביצוע הכולל של תוכנית או פיקוד

באמצעות PowerShell

PowerShell כולל את המובנה מדוד-פיקוד cmdlet שעוזר לך למדוד את הזמן שלוקח להריץ בלוקי סקריפט, cmdlets או אפילו תוכניות חיצוניות. להלן דוגמה לשורת הפקודה של PowerShell המודדת את הזמנים הנדרשים עבור ה- פינג google.com שורת פקודה לסיום:

מדוד פקודה ping google.com

לאחר הפלט של פקודת ping, תראה את הנתונים הסטטיסטיים הבאים בתחתית.



ימים: 0 שעות: 0 דקות: 0 שניות: 3 אלפיות השנייה: 66 טיקים: 30660017 סה'כ ימים: 3.5486130787037E-05 סה'כ שעות: 0.000851667138888889 סה'כ דקות: 0.0511000283333333 סך הכל שניות: 3.0660017 סה'כ מילי-שניות: 3066.0017

למדוד זמן ביצוע כולל של פקודה או תוכנית

קרא עוד אודות מדוד-אובייקט ב- Microsoft Docs.

השלמת הפקודה נמשכה 3.06 שניות. ה מחוץ למארח הטיעון, אם הוא מושמט, PowerShell מסתיר את הפלט (של פינג במסוף - תראה רק את הנתונים הסטטיסטיים לביצוע.

אם יש לך שורת פקודה ארוכה או שאתה צריך להריץ פקודות מרובות, אתה יכול להכניס אותן לקובץ אצווה של Windows ואז להפעיל אותו באמצעות PowerShell. הנה דוגמה:

מדוד פיקוד מחוץ למארח
קָשׁוּר: מצא את כמות המילים, הסימנים והשורות בקובץ טקסט באמצעות PowerShell

באמצעות VBScript

לפניכם VBScript פשוט המחשב את זמן הביצוע הכולל של קובץ שורת פקודה, תוכנית או אצווה.

הגדר WshShell = WScript.CreateObject ('WScript.Shell') sCmd = chr (34) & 'D:  קבצי אצווה  Backup.bat' & chr (34) dtmStartTime = טיימר החזר = WshShell.Run (sCmd, 1, נכון ) Wscript.Echo 'המשימה הושלמה ב-' & Round (Timer - dtmStartTime, 2) & 'seconds.'
  1. העתק את הקוד לעיל לפנקס הרשימות
  2. שמור את הקובץ כ- exec_timer.vbs .
  3. בשורה השנייה שמתחילה ב sCmd , שנה את התוכנית שברצונך להפעיל - כלומר, החלף 'D: קבצי אצווה Backup.bat' בדוגמה שלעיל עם היישום או האצווה שברצונך להריץ.
  4. שמור את הקובץ וסגור את פנקס הרשימות.
  5. לחץ פעמיים על קובץ VBScript להפעלתו.

ה- VBScript משיק את קובץ האצווה, הפקודה או התוכנית. לאחר סיום ההפעלה, זמן הביצוע הכולל מוצג (בשניות).

למדוד זמן ביצוע כולל של פקודה או תוכנית


באמצעות TimeIt.exe מכלי Resource Kit

TimeIt.exe הוא חלק מ- Windows Server 2003 ערכת משאבים ( קישור מראה ) כלי המציג את תזמון ביצוע התוכנית או הפקודה. תוכנית זו פועלת בסדר גם ב- Windows 10.

 קובץ מידע: rktools.exe - SHA256 - 6260d75a2cb30201c5424defec3ba505edb92b91802825e2fd6eb9bd58ed5cca 
  1. לאחר הורדת כלי RK, פתח את rktools.exe באמצעות 7-Zip.
  2. ואז, פתח פנימה rktools.msi
    למדוד זמן ביצוע כולל של פקודה או תוכנית
  3. למצוא TimeIt.exe ולחלץ לתיקיה.

להפעלת פקודה או קובץ אצווה ומדידת זמן הביצוע הכולל שלה, הנה כמה דוגמאות:

timeit.exe פינג google.com
timeit.exe C:  קבצי אצווה  זמן ריצת פקודה  backup.bat

למדוד זמן ביצוע כולל של פקודה או תוכנית

זמן זה הראה את זמן יציאת התהליך ואת הזמן שחלף, בין היתר. כשבדקתי, ה- בתים שנכתבו הערך לא תאם לגודל קובץ הפלט. עם זאת, בתים הנקראים / כתובים אינם נושא לדיון במאמר זה.

עוד מידע

בעת כתיבת המאמר אודות חילוץ שמע מסרטון קובץ באמצעות FFmpeg.exe, חשבתי למדוד את זמן הביצוע של הפקודה. השתמשתי בתסריט הנ'ל כדי למדוד את הזמן שנדרש לחילוץ שמע MP3 מקובץ סרט באמצעות הכלי בשורת הפקודה FFmpeg.exe.

האצווה הראשונה כללה שורת פקודה זו:

ffmpeg -i 'C:  Movies  Movie.mp4' -ss 01:20:00 -t 00:00:20 -codec: libmp3lame -ab 128000 'D:  output-1.mp3'

האצווה השנייה כללה שורת פקודה זו:

ffmpeg -ss 01:20:00 -i 'C:  Movies  Movie.mp4' -t 00:00:20 -codec: libmp3lame -ab 128000 'D:  output-2.mp3'

כפי שאתה יכול לראות, מספר הארגומנטים בשורת הפקודה והערכים המתאימים זהים לחלוטין. ההבדל היחיד הוא שה- -ss (נקודת התחלה) פרמטר ממוקם לפני ה- -אני (קלט קובץ) פרמטר, בקובץ האצווה השני. השיטה נקראת חיפוש תשומות לפי תיעוד FFmpeg.exe . השיטה הראשונה נקראת חיפוש פלט , איפה ב -אני (קובץ קלט) מופיע הפרמטר לפני -ss פָּרָמֶטֶר.

  • בתיעוד של FFmpeg נאמר כי שיטת חיפוש הקלט מהירה הרבה יותר מחיפוש הפלט, מכיוון שכאשר משתמשים בשיטה הקודמת, FFmpeg.exe קופץ (מחפש) ישירות לנקודת ההתחלה המוזכרת בקובץ הקלט ומתחיל לפענח מאותה נקודה ואילך.
  • ואילו, שיטת חיפוש הפלט פותחת את הקובץ תחילה, מתחילה לפענח מ- 00:00:00 ולאחר מכן משליך את הנתונים עד שהם מגיעים ל- -ss נקודת התחלה 01:20:00 . לכן, משאבי המערכת (מעבד, זיכרון ו- I / O של דיסק) מבוזבזים, כמו גם זמן הביצוע מוגדל כאשר משתמשים בשיטת חיפוש הפלט.
קָשׁוּר: המרת MP4 או כל וידאו ל- MP3 (חלץ אודיו מקובץ וידאו)

תיעוד FFmpeg.exe נכון. כשבדקתי, חיפוש הקלט רץ הרבה יותר מהר משיטת חיפוש הפלט.

  • לפקודה הראשונה (חיפוש פלט) נמשכה 20.48 שניות.
  • לפקודה השנייה (חיפוש קלט) נמשכה 16.62 שניות.

אם אתה מכיר שיטות אחרות למדידת זמן הביצוע של תהליך, סקריפט או פקודה, נדע.


בקשה קטנה אחת: אם אהבתם את הפוסט הזה, אנא שתפו את זה?

נתח 'קטנטן' אחד ממך יעזור מאוד ברציפות בצמיחת הבלוג הזה. כמה הצעות נהדרות:
  • להצמיד אותו!
  • שתף אותו לבלוג האהוב עליך + פייסבוק, Reddit
  • צייץ את זה!
אז תודה רבה על תמיכתך, הקורא שלי. זה לא ייקח יותר מ -10 שניות מזמנך. לחצני השיתוף נמצאים ממש למטה. :)