O limite imposto pelo shell / OS é geralmente muito longo - geralmente um ou duzentos mil caracteres.
getconf ARG_MAX
fornecerá o limite máximo de entrada para um comando. No sistema Debian eu atualmente tenho um terminal aberto neste retorna 131072 que é 128 * 1024. O limite é reduzido por suas variáveis de ambiente, como se minha memória me servisse corretamente, elas são passadas na mesma estrutura pelo shell, embora isso só tire algumas centenas de caracteres na maioria dos casos. Para encontrar uma aproximação deste valor, execute env | wc -c
- isto sugere 325 caracteres na hora atual neste login nesta máquina.
Os scripts provavelmente permitirão essa extensão completa, mas não é improvável que outros utilitários imponham seus próprios limites intencionalmente ou por meio de problemas de design. Também pode haver limites artificiais para quanto tempo um argumento individual em uma linha de comando longa pode ser e / ou quanto tempo um caminho para um arquivo pode ser.