Anchor(faq82)

Why is $(...) preferred over `...` (backticks)?

For several reasons:

Backslashes are no more no less surprising than elsewhere IMHO

  echo `echo \a`     # prints a
  echo `echo \\a`    # prints a
  echo `echo \\\a`   # prints \a
  echo `echo \\\\a`  # prints \a
  echo $(echo \a)    # prints a
  echo $(echo \\a)   # prints \a
  echo $(echo \\\a)  # prints \a
  echo $(echo \\\\a) # prints \\a

The same sort of things happens without any quotes or within "".

I suspect the real advantage of $( ) here is that you don't need to take extra care of the quotes (\ ""), you just put them as usual, ie echo "`echo \"foo    bar\"`" vs echo "$( echo "foo     bar")" -- pgas

The only time backticks are preferred is when writing code for the oldest Bourne shells, which do not know about $().