In general, just use the "right tool" for the job .. where that depends on the specific task and your knowledge/speed/ability in each, and relevant to that task..
in reply to bash vs perl
BUT, that doesn't mean one or the other -- use the power of both at the same time!! the perl -x (see perlrun) makes this possible (sort of a trivial example, but hopefully shows the potential):
logrotate ..... # rotate out /data/file.txt
perl -x $0 $@ > /data/file.txt 2>&1
mail -s "file.txt" email@example.com < /data/file.txt
echo "Job done. Errors:"
grep ERROR /data/file.txt
# do whatever perl-friendly tasks -- process some files, do calculatio
+ns, call CPAN modules for heavy lifting, whatever.