mv "$dir_path"/* ... não apenas moverá arquivos, mas tudo em "$dir_path" . Pelo menos tudo cujo nome não começa com um ponto (arquivos ocultos). No bash você pode mudar isso com a opção dotglob . Mas se o * se expande muito bem (combina tudo, mas não muito para uma linha de comando), então você pode usar um shell para indireção:
find . -type d -name "*dir*" -exec bash -c 'mv "$0"/* /path/to/test' {} \;