Você precisa de alguma maneira de dizer que deseja enviar a saída de md5sum para um arquivo. Como find (ou xargs ) não tem essa funcionalidade incorporada e md5sum sabe apenas como imprimir para a saída padrão, um redirecionamento de shell é a maneira mais direta.
Observe que seu comando não funcionará no caso geral por outro motivo: o formato de saída de find não é o formato de entrada de xargs , eles diferem com nomes de arquivos contendo espaço em branco ou \"' . Use find -exec em vez disso.
find . -type f -exec sh -c 'md5sum "$0" >"$0.md5"' {} \;