Leia sobre a expansão dos parâmetros do bash. Em seus exemplos, você está usando a sintaxe de pesquisa e substituição que substitui a primeira ocorrência do padrão fornecido.
${parameter/pattern/string}
Exemplo:
> X="aaaa"
> echo ${X/a/b} # substitute first occurence of a with b
> baaa
A sintaxe para substituir todas as ocorrências é:
${parameter//pattern/string}
Exemplo:
> X="aaaa"
> echo ${X//a/b} # substitute all occurences of a with b
> bbbb
Assim, no seu primeiro exemplo, seu parâmetro era "a / b" e você disse ao bash para substituir a primeira ocorrência de "b" em "a / b" (o valor de var) pela string "c / d" ( que resulta em "a / c / d"). Note que "\ d" é desnecessariamente escapado - não há diferença para "d" sozinho.