It's very similar to the backticks ``. It's called [command substitution][1] ([posix specification][2]) and it invokes a subshell. The command in the braces of `$()` or between the backticks (`` `…` ``) is executed in a subshell and the output is then placed in the original command. Unlike backticks, the `$(...)` form can be nested. So you can use command substitution inside another substitution. There are also differences in escaping characters within the substitution. I prefer the `$(...)` form. [1]: http://www.tldp.org/LDP/abs/html/commandsub.html [2]: http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_06_03