Quando você executa uma sequência de comandos no shell interativo , como
echo xxx; cat file; ls; echo yyy
então tudo é executado consecutivamente e a saída é enviada para o terminal.
Mas, se você executar esses comandos dentro de parênteses ()
um novo shell não interativo será criado e tudo será executado dentro dele. Agora, com >file.txt
após ()
, você redireciona toda a saída desse sub-shell oculto para um arquivo.