Tente isso
echo "29371923471239" | sed -r ':A;s|([0-9]+)([0-9]{3})|,|g;t A'
29,371,923,471,239
Isso funciona dividindo o número em duas partes, os últimos três dígitos e tudo mais. Em seguida, ele adiciona um ,
ao final de todo o resto e ramifica de volta para o início. Você pode ver isso trabalhando com
echo "29371923471239" | sed -r ':A;s|([0-9]+)([0-9]{3})|,|g'
29371923471,239