Para qualquer outra pessoa, veja também a resposta que Roxy Walsh postou, que fornece alguns detalhes adicionais sobre o problema, que são necessários para entender alguns dos detalhes fornecidos pela minha resposta.
Ok, aqui está o acordo:
Os apóstrofos estavam escapando dos tis.
Tente isto:
echo ~
echo '~'
O que você vai descobrir é que o primeiro comando expande o ~ para o seu diretório pessoal. No segundo comando, você recebe um til real. O til foi "escapado". Escapar significa especificar que o personagem precisa ser tratado como um personagem normal, em vez de ter um significado especial.
Agora, o que você precisa fazer é escapar dos espaços, o que você fez com as barras invertidas, mas não para escapar do til. Os espaços normalmente têm um significado especial, que é separar seus parâmetros. Você não quer isso separado: seu espaço em "Sites compartilhados /" faz parte de um diretório. Esse espaço em particular não se destina a informar ao comando "ln" que você acabou de especificar o primeiro arquivo / diretório e está prestes a especificar o próximo arquivo / diretório. Então esse espaço precisava ser escapado.
Com base no exemplo que você mostrou, o seguinte também teria funcionado:
ln -s ~/'Dropbox/Shared Sites/SITENAME' ~/Sites/SITENAME