eval i={1..21111}' for((j=i,l=0;j;l+=j%10?j%10:9,j/=10)){ : } a[l]+="$i " ' printf %s "${a[@]::6}" "111111 ${a[7]::155}"