10Aug

כיצד לחסוך זמן על ידי אוטומציה משימות מייגע עם

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

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

תרחיש

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

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

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

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

יצירת הסקריפט

הדבר הראשון שנרצה לעשות הוא ליצור לולאה שתחזור על אותן פעולות מספר פעמים - במקרה זה, אנו מעריכים שעלינו לחזור על זה 300 פעמים, לכן'll להשתמש בתחביר לולאה ככה:

לולאה 300
{

}

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

Loop 300
{
לחץ
}

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

Loop 300
[
שלח
שלח,{ Space}
}

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

שלח, לבדוק{ שטח}

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

לולאה 300








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

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

GetKeyState, מדינה, F8
אם המדינה = D
לשבור

את התסריט הסופי

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

לולאה 300



אם המדינה = D
לשבור
שינה 3000
לחץ
שינה 3000
שלח,{ Space}
}
חזור

כדי להמחיש איך זה עובד בפועל, הנה וידאו מהיר כימראה את זה בפעולה:

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