Just set up an environment for the cron job that has all the information (and permissions and so on) it needs to run properly. I bet a lot of your personal environment information consists of stuff such as a customised PATH, a prompt (likely PS1, PS2 etc), maybe something to tell Perl to look into a directory in your HOME to look for modules (e.g. PERL_LIB = ~/perl5lib), maybe some stuff to auto-beautify the output of the ls command, yadayadayada. Does the cron job really need all that? Or could it live a happy life with just a minimal environment?