La recommandation moderne est d'utiliser :
$(...)
au lieu de l'ancien :
`...`
principalement pour la lisibilité et pour éviter d'avoir à s'échapper lors de l'imbrication.
Quels shells ne supportent pas le $(...)
forme, et y en a-t-il encore en usage aujourd'hui ?
Réponse acceptée :
Le shell Bourne d'origine, csh ou tcsh ne prend pas en charge $()
et nécessite ``
pour la substitution de commande.
Le shell Bourne n'est plus utilisé comme shell par défaut (/bin/sh) sur de nombreux systèmes d'exploitation basés sur UNIX. Cependant, ces shells sont toujours fournis par les fournisseurs de systèmes d'exploitation car ils sont toujours utilisés pour des raisons historiques.
AIX et HP-UX ont tous deux /bin/sh comme shell compatible POSIX. Le shell Bourne est toujours disponible sur AIX en tant que "bsh" (mais obsolète en 1995 avec AIX 4.1) et HP-UX 11.11 "/usr/old/bin/sh" (Bourne a été supprimé de 11.23). Je ne sais pas quand le changement a été fait, mais c'était il y a de nombreuses années.