mkdir aux
ls | shuf > a # a=randomize list of files
(tail -n +2 a ; head -1 a) > b # b=rotate a one line
paste a b > c # c=(name1 name2)*
gawk '{system( "mv " $1 " aux/" $2)}' c # mv name1 -> aux/name2
mv aux/* . # mv aux/name -> name
rm a b
mantenha c
para reverter, se necessário.
(Escolha um nome melhor para os arquivos auxiliares)