Bird
Raised Fist0
Raspberry Piprogramming~5 mins

Cron jobs for scheduled tasks in Raspberry Pi - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a cron job?
A cron job is a scheduled task that runs automatically at set times or intervals on a Raspberry Pi or other Linux systems.
Click to reveal answer
beginner
How do you edit the cron jobs for the current user?
You use the command crontab -e to open the cron table editor for the current user.
Click to reveal answer
intermediate
What does the cron time format look like?
It has five fields: minute (0-59), hour (0-23), day of month (1-31), month (1-12), and day of week (0-7, Sunday=0 or 7). Each field controls when the task runs.
Click to reveal answer
intermediate
How would you schedule a script to run every day at 7:30 AM?
You write this in crontab: 30 7 * * * /path/to/script.sh. This means at minute 30, hour 7, every day, every month, every day of the week.
Click to reveal answer
intermediate
Why is it important to use full paths in cron jobs?
Because cron runs with a limited environment, using full paths ensures the system finds the commands and scripts correctly.
Click to reveal answer
Which command opens the cron editor for the current user?
Acronedit
Beditcron
Ccron -open
Dcrontab -e
In a cron schedule, what does the '*' symbol mean?
ASkip this field
BEvery possible value for that field
COnly once
DNo value
How often will this cron job run? 0 0 * * 0 /home/pi/script.sh
AEvery Sunday at midnight
BEvery day at midnight
CEvery hour on Sunday
DEvery minute on Sunday
Why should you use full paths in cron commands?
ABecause cron has a limited environment and may not find commands without full paths
BTo make the command shorter
CTo make the command run faster
DIt is not necessary to use full paths
What does the following cron time mean? */15 * * * *
AEvery 15 days
BEvery 15 hours
CEvery 15 minutes
DEvery 15 seconds
Explain how to create a cron job that runs a backup script every day at 2 AM on a Raspberry Pi.
Think about the time fields and how to edit the cron table.
You got /5 concepts.
    Describe why cron jobs might fail if you do not use full paths or environment variables.
    Consider what environment cron runs in compared to your normal terminal.
    You got /5 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a cron job on a Raspberry Pi?
      easy
      A. To update the Raspberry Pi operating system
      B. To manually execute commands in the terminal
      C. To schedule tasks to run automatically at specific times
      D. To install new software packages

      Solution

      1. Step 1: Understand what cron jobs do

        Cron jobs are used to automate tasks by running commands or scripts at scheduled times without manual intervention.
      2. Step 2: Compare options with cron job purpose

        Only To schedule tasks to run automatically at specific times describes scheduling tasks automatically, which matches the purpose of cron jobs.
      3. Final Answer:

        To schedule tasks to run automatically at specific times -> Option C
      4. Quick Check:

        Cron job purpose = schedule tasks automatically [OK]
      Hint: Cron jobs run commands automatically on schedule [OK]
      Common Mistakes:
      • Confusing cron jobs with manual command execution
      • Thinking cron updates the system automatically
      • Assuming cron installs software
      2. Which of the following is the correct syntax to edit the cron jobs for the current user on a Raspberry Pi?
      easy
      A. cronedit
      B. cron -edit
      C. editcron
      D. crontab -e

      Solution

      1. Step 1: Recall the command to edit cron jobs

        The standard command to edit cron jobs for the current user is crontab -e.
      2. Step 2: Verify other options

        Options A, B, and D are not valid Linux commands for editing cron jobs.
      3. Final Answer:

        crontab -e -> Option D
      4. Quick Check:

        Edit cron jobs command = crontab -e [OK]
      Hint: Use 'crontab -e' to edit cron jobs [OK]
      Common Mistakes:
      • Typing incorrect commands like 'cronedit'
      • Using 'cron -edit' which is invalid
      • Assuming 'editcron' is a command
      3. Given the cron job entry 30 2 * * * /home/pi/backup.sh, what does it do?
      medium
      A. Runs backup.sh every day at 2:30 AM
      B. Runs backup.sh every 30 minutes
      C. Runs backup.sh every day at 2:00 PM
      D. Runs backup.sh every 2 hours and 30 minutes

      Solution

      1. Step 1: Understand cron time fields

        The fields are: minute (30), hour (2), day of month (*), month (*), day of week (*). This means the command runs at 2:30 AM every day.
      2. Step 2: Match the time to options

        Runs backup.sh every day at 2:30 AM correctly states it runs daily at 2:30 AM. Other options misunderstand the timing.
      3. Final Answer:

        Runs backup.sh every day at 2:30 AM -> Option A
      4. Quick Check:

        Cron time 30 2 * * * = 2:30 AM daily [OK]
      Hint: Minute then hour in cron means 30 2 is 2:30 AM [OK]
      Common Mistakes:
      • Confusing AM and PM hours
      • Thinking it runs every 30 minutes
      • Misreading the asterisks as specific days
      4. You added this cron job: 0 25 * * * /home/pi/script.sh but it never runs. What is the problem?
      medium
      A. The hour value 25 is invalid in cron syntax
      B. The script path is incorrect
      C. The minute value 0 is invalid
      D. Cron jobs cannot run scripts

      Solution

      1. Step 1: Check the hour field in cron syntax

        The hour field must be between 0 and 23. 25 is invalid and causes the job not to run.
      2. Step 2: Verify other options

        The script path might be correct, minute 0 is valid, and cron can run scripts, so only the hour value is the problem.
      3. Final Answer:

        The hour value 25 is invalid in cron syntax -> Option A
      4. Quick Check:

        Cron hour must be 0-23, 25 is invalid [OK]
      Hint: Hour in cron is 0-23, not 25 [OK]
      Common Mistakes:
      • Using invalid hour values above 23
      • Assuming minute 0 is wrong
      • Thinking cron can't run scripts
      5. You want to run a Python script every weekday at 7:15 AM on your Raspberry Pi. Which cron job entry is correct?
      hard
      A. 7 15 * * 1-5 /usr/bin/python3 /home/pi/script.py
      B. 15 7 * * 1-5 /usr/bin/python3 /home/pi/script.py
      C. 15 7 * * 6,7 /usr/bin/python3 /home/pi/script.py
      D. 15 7 1-5 * * /usr/bin/python3 /home/pi/script.py

      Solution

      1. Step 1: Understand cron fields for time and days

        The format is minute hour day_of_month month day_of_week. To run at 7:15 AM, minute=15, hour=7. Weekdays are days 1-5 (Monday to Friday).
      2. Step 2: Check each option

        15 7 * * 1-5 /usr/bin/python3 /home/pi/script.py correctly uses '15 7 * * 1-5' for 7:15 AM on weekdays. 7 15 * * 1-5 /usr/bin/python3 /home/pi/script.py swaps hour and minute. 15 7 * * 6,7 /usr/bin/python3 /home/pi/script.py uses weekend days (6,7). 15 7 1-5 * * /usr/bin/python3 /home/pi/script.py uses day_of_month 1-5, not weekdays.
      3. Final Answer:

        15 7 * * 1-5 /usr/bin/python3 /home/pi/script.py -> Option B
      4. Quick Check:

        Weekday cron = 1-5, time 7:15 = 15 7 [OK]
      Hint: Weekdays are 1-5 in cron day_of_week field [OK]
      Common Mistakes:
      • Swapping hour and minute fields
      • Using day_of_month instead of day_of_week for weekdays
      • Confusing weekend days with weekdays
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard