First off, I'm no DBA, but I don't know for sure if that restore command will drop all old data. Hopefully someone will clarify this. The wiki says "it might be recommended to empty it first."
That is a shell command, but can be executed via cron. I'd create a script that does all of it for me, and make darned sure it's not group or world readable (i.e. chmod 700) since it has your db password.
!/bin/bash (this is a bash shell script)
cd ~/dbackups (change to my backups directory in my home folder)
cat filename.sql | mysql -uusername -ppassword -h yourMySQLHostname dbname