Os parênteses denotam um subshell no bash. Para citar a página man bash
:
(list) list is executed in a subshell environment (see COMMAND
EXECUTION ENVIRONMENT below). Variable assignments and builtin
commands that affect the shell's environment do not remain in
effect after the command completes. The return status is the
exit status of list.
em que list
é apenas uma sequência normal de comandos.
Isso é realmente bastante portátil e não é específico de apenas bash
. A POSIX Shell Command Language especificação tem a seguinte descrição para o (compound-list)
sintaxe:
Execute compound-list in a subshell environment; see Shell Execution Environment. Variable assignments and built-in commands that affect the environment shall not remain in effect after the list finishes.