Files
yankee-gnome-fire-consumer/recycle/cron.bash
2025-02-13 06:31:06 -05:00

49 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# Function to create a cron job
create_cron_job() {
user=$1 # Username for the cron job
minute=$2 # Minute of the hour (0-59)
hour=$3 # Hour of the day (0-23)
day_of_month=$4 # Day of the month (1-31)
month=$5 # Month of the year (1-12)
day_of_week=$6 # Day of the week (0-6, Sunday is 0)
command=$7 # Command to execute
# Construct the cron job line
cron_line="${minute} ${hour} ${day_of_month} ${month} ${day_of_week} ${command}"
# Add the cron job for the specified user. Redirects stderr to stdout.
(crontab -u yankee -l 2>/dev/null; echo "$cron_line") | crontab -u yankee -
echo "Cron job added for user $user:"
echo "$cron_line"
}
whoami
# Example usage:
user="yankee"
minute="*" # 4:20 PM
hour="*" # 4 PM in 24-hour format
day_of_month="*" # Every day of the month
month="*" # Every month
day_of_week="*" # Every day of the week
command="cd /yankee-gnome-fire-consumer/; /bin/bash consumer.bash"
create_cron_job "$user" "$minute" "$hour" "$day_of_month" "$month" "$day_of_week" "$command"
# Example with different schedule (e.g., every Monday at 2:00 AM):
# user="yankee"
# minute="0"
# hour="2"
# day_of_month="*"
# month="*"
# day_of_week="1" # Monday (0 is Sunday, 1 is Monday, etc.)
# command="/tmp/another_script.sh"
# create_cron_job "$user" "$minute" "$hour" "$day_of_month" "$month" "$day_of_week" "$command"