echo $ (printf ...) eliminando espacios en blanco / formateando

Estaba usando printf para formatear un número en bash:

$ printf -- ">>%4d\n" 1
>>   1

Esto funciona bien, pero cuando hago lo mismo en una subshell:

$ echo $(printf -- ">>%4d\n" 1)
>> 1

¿Por qué se eliminan los espacios? No tengo la mínima idea.

Respuestas a la pregunta(3)

Su respuesta a la pregunta