A konkrét példádból értettem meg, hogy nem csak egyes parancsokat, hanem a teljes szkript tartalmának eredményét szeretnéd átirányítani.
Mindkét megoldásod valid, és szebbet nem tudok, legfeljebb mást, egy harmadikat:
function do_everything {
cmd1
cmd2
...
}
do_everything 2>&1 | tee $mylogfile