&&
(como ;
) é um separador de comando, e os redirecionamentos funcionam no nível comando , não no nível da linha.
Se você quiser que um único redirecionamento seja aplicado a vários comandos de uma só vez, agrupe-os:
(echo "foo"; date +bar) > /path/to/file
{ echo "foo"; date +bar; } > /path/to/file
(Neste caso em particular, não importa se você usa &&
ou ;
.)
Como alternativa, você pode gerar uma única linha com tudo:
echo "analysis done by $USER at $(date "+%D %r")" > /path/to/file