Weekly Task at 1:30 PM Every Monday
30 13 * * 1 Runs every Monday at 1:30 PM.
* In a Nutshell
The cron expression 30 13 * * 1 runs Runs every Monday at 1:30 PM.. This schedule is ideal for weekly reporting tasks, system maintenance checks, or data synchronization jobs that need to occur at a consistent time early in the work week. It ensures a predictable cadence for operations that are not time-sensitive enough for daily execution but require regular attention.
* When to use this
Use 30 13 * * 1 when a recurring task needs to run Runs every Monday at 1:30 PM.. This schedule is commonly associated with daily schedules and data sync and maintenance window and report generation and weekly schedules workloads. It uses Standard (5-Field POSIX) syntax, supported by Unix cron daemons, cloud schedulers such as AWS EventBridge, and container orchestration platforms such as Kubernetes CronJob.
CronBase parses 30 13 * * 1 using a dialect-aware rules engine that identifies the Standard (5-Field POSIX) format, validates field structure against the Standard (5-Field POSIX) specification, and produces the translation above. Next run times are calculated by forward-scanning from the current UTC clock. Learn how CronBase works.
Platform Implementations
Bash
Add the cron job to your crontab using crontab -e. Ensure your script has execute permissions.
0 13 * * 1 /path/to/your/script.sh Last verified:
Nodejs
Install the 'node-cron' package (npm install node-cron). Run your Node.js script. The scheduler will operate as long as the script is running.
const cron = require('node-cron');
cron.schedule('0 13 * * 1', () => {
console.log('Running weekly task at 1:30 PM Monday');
// Your task code here
}); Last verified:
Python
Install the 'python-crontab' library (pip install python-crontab). Run this Python script to add the job to your user's crontab.
from crontab import CronTab
cron = CronTab(user=True)
job = cron.new(command='/usr/bin/python /path/to/your/script.py', comment='Weekly Task')
job.setall('0 13 * * 1')
cron.write() Last verified:
Golang
Use a library like github.com/robfig/cron/v3. This Go program needs to be running in the background for the schedule to be active.
package main
import (
"fmt"
"github.com/robfig/cron/v3"
)
func main() {
c := cron.New()
c.AddFunc("0 13 * * 1", func() {
fmt.Println("Running weekly task at 1:30 PM Monday")
// Your task code here
})
c.Start()
// Keep the application running
select {}
} Last verified:
Java
Utilize a scheduling library like Quartz. Ensure the Quartz scheduler is initialized and running. The Quartz expression '0 13 1 ? * MON' is equivalent to '0 13 * * 1'.
import org.quartz.CronScheduleBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.quartz.impl.StdSchedulerFactory;
import org.quartz.Scheduler;
// ... Scheduler setup code ...
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity("weeklyTrigger", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule("0 13 1 ? * MON")) // Note: MON maps to day-of-week 1
.build();
scheduler.scheduleJob(jobDetail, trigger); Last verified:
Kubernetes
Apply this Kubernetes CronJob manifest to your cluster using kubectl apply -f your-manifest.yaml.
apiVersion: batch/v1
kind: CronJob
metadata:
name: weekly-task
spec:
schedule: "0 13 * * 1"
jobTemplate:
spec:
template:
spec:
containers:
- name: weekly-task-container
image: your-image:latest
command: ["/bin/sh", "-c", "echo Running weekly task..."]
restartPolicy: OnFailure Last verified:
AWS EventBridge Equivalent
Standard cron expressions often need conversion for AWS EventBridge schedules.
cron(30 13 ? * 1 *) Frequently Asked Questions
What does '30 13 * * 1' mean?
This cron expression means the job will run at 13:30 (1:30 PM) on every Monday (day of the week '1'). The asterisks indicate that it will run regardless of the day of the month or the month of the year.
Does this expression consider timezones?
Standard cron expressions are evaluated based on the server's local timezone. If your server is in UTC and your business operates in EST, this job will run at 1:30 PM UTC, which is 8:30 AM EST. For timezone-sensitive operations, ensure your server's timezone is correctly configured or use a cron implementation that supports explicit timezone settings.
How can I verify this job is running?
You can verify the job is running by checking system logs for the execution of your command or script. Add logging within your script to confirm successful execution and to record the timestamp. Monitoring tools can also be configured to alert you if the job doesn't run within its expected window.
What is a common variation of this schedule?
A common variation might be '0 9 * * 1', which would schedule the job for 9:00 AM every Monday, often used for morning reporting or status checks at the start of the business day.
What is a potential gotcha with this expression?
A potential gotcha is if the task takes longer than an hour to run and the next Monday's run time is approaching. Since this runs weekly, it's less prone to overlapping runs than more frequent schedules, but very long-running tasks could still pose an issue if not managed.
More schedules like this
Explore Daily Schedules →* Try any expression
Standard, Quartz, AWS EventBridge, Jenkins, named schedules (@daily, @hourly…)
* Keep Exploring