Grouping commands in a subshell
( <LIST> )
<LIST> is executed in a separate shell - a subprocess. No changes to the environment (variables etc…) are reflected in the "main shell".
Execute a command in a different directory.
echo "$PWD" ( cd /usr; echo "$PWD" ) echo "$PWD" # Still in the original directory.
- The subshell compound command is specified by POSIX.
- Avoid ambiguous syntax.
(((1+1))) # Equivalent to: (( (1+1) ))