Run a single command at a chosen time without editing crontab 20.02.2026 | reading time: 2 min Need to run a command later without touching crontab Use the `at` command to queue one-off jobs for a specific time and let the system run them with your user privileges and a minimal environment. One-off backup example Here is a practical session that schedules a tar backup for tonight and then shows how to inspect and remove the job in the queue ```bash $ echo "tar czf /tmp/home-backup.tar.gz /home/user" | at 23:00 job 1 at Tue Feb 20 23:00:00 2026 ``` List queued jobs ```bash $ atq 1\tTue Feb 20 23:00:00 2026 ``` Remove the scheduled job ```bash $ atrm 1 ``` Timing, environment and permissions Tell the system exactly what to run and when and verify it will work at runtime The `at` job runs as the scheduling user and provides a very small environment so always use full paths or export needed variables; use `at -f script.sh` to schedule a script file and `at -m` to ensure output is emailed; check or view a job body with `at -c JOB` and manage permissions with `/etc/at.allow` and `/etc/at.deny`. When at is not enough Use `at` for single, ad hoc tasks and prefer other tools for recurring or load-aware scheduling For recurring jobs use `cron` or `systemd` timers and for deferred execution when load is low try the `batch` command; combine `at` with shell scripting for flexible one-shot automation. Next steps Practice scheduling a variety of commands, inspect their queued bodies, and experiment with `at -f` and `at -m` to learn how environment and mail behave; deepen your skills with systemd timers and cron and consider formal certification such as CompTIA Linux+ or LPIC-1 and intensive exam preparation at bitsandbytes.academy. Join Bits & Bytes Academy First class LINUX exam preparation. utilities processes scripting