Eu faria algo assim:
for i in *; do mv $i/files_of_interest.txt ../new_interest_folder; done
Observe que, se os arquivos de interesse forem conjuntos, como todos os arquivos .png, isso deve funcionar:
for i in *; do mv $i/*.png ../new_png_folder; done
O * after 'in' pode ser substituído por qualquer outro shell glob. Uma ótima maneira de descobrir o que vai acontecer é ecoar as coisas:
for i in *folderx *foldery; do echo mv $i/*.png ../new_png_folder; done
Se isso produzir a lista de comandos que você deseja executar, volte e remova o 'eco' da linha e execute-o novamente.
As globs "* folderx * foldery" produziriam uma lista de todas as pastas que terminam em "folderx" ou "foldery"