Você pode usar readlink
para descobrir o nome do arquivo, mas não precisa!
cp b c
mv c b
É simples assim. Se você está escrevendo um script para fazer isso, você deve usar
a saída de mktemp
em vez de c
para garantir que você não substitua o arquivo já existente
c
.