סקריפט בדיקת אתר ב-BASH

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

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

אני מצרף את הסקריפט כאן:


#!/bin/bash
pushd /YOUR_DIRECTORY_FULL_PATH
myfilename="FILE_NAME_$(date +"_%d_%H:%M").html"

wget -O $myfilename http://www.example.com

grep_output=`grep 'WELCOME' $myfilename`
if [ "$grep_output" == "" ]; then
   echo "test was OK. tested at $(date +"day: %d hour: %H:%M:%S"). file name created is $myfilename";
else
    echo "ALERT ALERT found at $myfilename. test conducted at $(date +"%d %H:%M:%S")" | mail -aFrom:test@example.com -s ALERT yourmail@yourdomain.com
fi

את הסקריפט יש להעתיק לקובץ כלשהו (למשל check.sh), ולשנות את הפרמטרים השונים – כמו שם האתר, שם התיקיה שאליה אנו רוצים לשמור את הקבצים וכן את כתובת המייל ואת המילה שאותה מחפשים (בסקריפט הדוגמא היא WELCOME, אבל זה יכולה להיות כל מחרוזת טקסט כולל HTML).

לאחר השמירה, ניתן לקובץ הרשאות ריצה באמצעות:


chmod 775 check.sh

ניתן לבדוק את הקובץ באמצעות:


./check.sh

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


crontab -e

ייפתח לנו עורך טקסט דיפולטיבי (בדרך כלל nano) כזה:

Cron

Cron

אנו נוסיף את השורה הזו:


* * * * *       /YOUR_PATH/check.sh

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


* * * * *        /YOUR_PATH/check.sh  >>  /YOUR_PATH/check.log

לא לשכוח לבדוק שיש הרשאת כתיבה לקובץ הלוג.

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

אהבתם? לא אהבתם? דרגו!

לא אהבתי בכלללא אהבתיבסדראהבתיאהבתי מאוד (אין הצבעות)


אל תשארו מאחור! יש עוד מה ללמוד!

הצטרפו לעדכונים!

העדכונים נשלחים אך ורק כאשר האתר מתעדכן.

רן בר-זיק

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