How to set a crontab to run command on the last day of every month.

crontab scheduleเป็นที่ทราบกันดีว่าใน crontab ของ linux มีแค่การกำหนด เวลา วัน เดือน ในการทำงานเท่านั้น หากว่าจะต้องการให้ทำงานในวันสุดท้ายของเดือน หรือ เสาร์แรกของเดือน จะไม่สามารถทำได้ แต่ถ้าหากรู้วิธีการเขียน script ก็สามารถใช้ script มาช่วยในการควบคุมการทำงานอีกต่อหนึ่งได้ ซึ่งในบทความนี้ผมได้นำตัวอย่าง script ที่ใช้ร่วมกับ crontab เพื่อให้สามารถกำหนดวันการทำงานได้อย่างถูกต้องตามความต้องการมากขึ้น

ตัวอย่าง script ที่จะให้ทำงานในวันสุดท้ายของเดือน

สร้างไฟล์ lastdaymonth.sh

[root@Ezylinux ~]# vi /root/lastdaymonth.sh
#!/bin/bash

TODAY=`/bin/date +%d`
TOMORROW=`/bin/date +%d -d "1 day"`

# See if tomorrow's day is less than today's
if [ $TOMORROW -lt $TODAY ]; then
        COMMAND //ใส่คำสั่งที่ต้องการให้ทำงาน
fi
exit 1

สร้าง schedule การทำงาน

[root@Ezylinux ~]# crontab -e
1 0 * * * /root/lastdaymonth.sh

ตัวอย่าง script ที่จะให้ทำงานในวันเสาร์แรกของเดือน

สร้างไฟล์ 1stSat.sh

[root@Ezylinux ~]# vi /root/1stSat.sh
#!/bin/bash

DAY=`date +%d`
if (($DAY <= 7)) ; then
   COMMAND //ใส่คำสั่งที่ต้องการให้ทำงาน
fi
exit 1

สร้าง schedule การทำงาน

[root@Ezylinux ~]# crontab -e
1 0 * * 6 /root/1stSat.sh

Related posts:

  1. Set up your Linux for Wake On LAN (WOL) wake on lan คือการสั่งให้เครื่อง server ทำการ startup ตัวเองขึ้นมาโดยการใช้คำสั่งจากเครื่องอีกเครื่องหนึ่งโดยผ่านทางระบบ...
  2. Find Out Which RPM Installed a Specific File by rpm or yum Command การตรวจสอบว่าไฟล์หรือคำสั่งต่างๆมาจาก package ไหนบ้าง สามารถทำได้ไม่ยาก โดยจะใช้คำสั่ง rpm หรือ yum...
  3. MySQL replication: ‘show master status’ shows ‘Empty set (0.00 sec)’ หลังจากได้เตรียม server สำหรับ MySQL replication ด้วยการทำให้ข้อมูลของทั้งสองเครื่องเหมือนกันเรียบร้อยแล้ว ก็มาถึงขั้นตอนการ setup...
  4. Setup MRTG to monitor CPU workload , Memory and Disk use status with IOSTAT. การติดตั้ง mrtg ในการ monitor สถานะต่างๆ ที่จะพูดถึงต่อไปนี้เป็นการนำ monitor tools...
  5. Linux last command – แสดงรายชื่อ user ที่ login เข้าสู่ระบบ ถ้าหากต้องการตรวจสอบรายละเอียดของการ login เข้าสู่ระบบ คุณจะนึกถึงอะไรเป็นอันดับแรก หลายคนคงตอบว่าให้เข้าไปดูที่ “/var/log/secure” สิ เพราะว่ามันเก็บประวัติการ...

You can skip to the end and leave a response. Pinging is currently not allowed.

Leave a Reply