Dennis aponta as alternativas usuais em sua resposta (strings single-in-double, double-in-single, single citar concatenadas com aspas simples com escape; você já mencionou os operadores de citação customizáveis do Perl), mas talvez essa seja a resposta direta você estava procurando.
Em shells parecidos com Bourne (sh, ksh, ash, dash, bash, zsh, etc.), strings com aspas simples são completamente literais. Isso facilita a inclusão de caracteres que, de outra forma, o shell trataria especialmente sem ter que escapar deles, mas significa que o próprio caractere de aspas simples não pode ser incluído em strings entre aspas simples.
Eu me recuso a pensar nas conchas do tipo csh, já que elas estão completamente quebradas em outros aspectos (veja Programação Csh considerada prejudicial ).