Otros han señalado la diferencia en la sintaxis (básicamente, $()
es un poco más limpio anidación WRT y escapa), pero nadie ha mencionado lo que considero la diferencia más importante: $()
es mucho más fácil de leer. No se parece a las comillas simples (que significan algo totalmente diferente), y los delimitadores de apertura y cierre son diferentes, por lo que es más fácil distinguir visualmente sus contenidos.
Para sus propios scripts, esto puede no ser realmente crítico; la legibilidad del código es buena, pero la funcionalidad es más importante. Pero para cualquiera que escriba tutoriales, código de muestra, respuestas de stackoverflow, etc., la legibilidad es mucho más importante. La gente escribe comillas simples en lugar de comillas invertidas al escribir ejemplos, etc., y luego se confunde cuando no funciona como se esperaba.
Así que para todos los ejemplos escribir sobre stackoverflow: por favor, guarde sus lectores algunos problemas, y utilizar siempre la forma $()
.
Técnicamente se pueden anidar, pero tiene que ser escapado una vez más por cada nivel, y como tal es imposible de mantener * * * y * fea. – l0b0