How to get everything from terminal mail(1) sent to my email address?
I assume you are referring to the notice that comes up in Terminal "You've got mail"


Create a file .forward in your home directory.  (that's a period and the word forward with no space.  In it write the address you want the mail forwarded to. 
This file has to be owned and readable by your userid.  
Jobs run by cron by default mail their output to the owner of the crontab file.  This can be overridden by specifying the option MAILTO=userid@somewhere.com at the top of the file.  See man crontab for details.


The second only forwards the details of jobs run from that particular crontab. If you have sandboxed services that have individual crontabs on a user basis (E.g. You have a database service that runs a consitency check on the database at 2:30 every morning, and runs that service as user mysql, then you have to add the line to mysql's crontab. 

General best practice for email that goes to non-real users is to forward it to a role first.  E.g. All the machines in your network send their system email to sysadmin@mydomain.com  Then on a central server you forward sysadmin's mail to a real person.  This makes it much easier at vacation time to temporarily forward email to your temp sysadmin.