Respostas:
O limite não está no bash, mas no seu sistema operacional. É definido pelo valor de ARG_MAXno seu sistema operacional limits.h. Você pode obter o valor executando getconf ARG_MAX. Na minha máquina OSX 10.5 (e na maioria dos outros sistemas BSD), é 262144. Você pode ler mais sobre esse limite aqui .
echo "$(printf "%$(getconf ARG_MAX)s")"com/bin/echo "$(printf "%$(getconf ARG_MAX)s")"
262144.