I was just wondering if this crontab would work to backup my home directory to a bkup directory every Saturday at 1230?
30 12 * * 6 tar -cvf backup.tar $HOME | bkup/
Will that work?
Piping to bkup/ probably will not work as expected.
Perhaps you meant something like this:
30 12 * * 6 tar -cvf /bkup/backup.tar $HOME
where /bkup is a different directory tree than where $HOME resolves to (usually /home).
The time looks okay: 30 = minutes, 12 = hours, 6 = Saturday. You might have intended 1230 am, which would be 0 for hours. Most people do not run backups while they are working.
Running with the -v option, you will probably get lengthy messages from cron (I have about 26,000 files under my $HOME). So I would eliminate that option. The - on the option is not necessary, but works with GNU tar. By eliminating the verbosity, you can more easily notice error messages.
Most people would compress the backup, e.g., using the z (gzip) option.
Factoring in those comments (but leaving the time alone), you might have something like
30 12 * * 6 tar czf /bkup/backup.tar.gz $HOME
Finally (out of scope for the question), your backup will be writing to the same file, every Saturday. If you have enough space, you might investigate how to generate distinct names for your backups and accumulate 2-3 backups in the space that compressing the backups saved.