Qual é o comprimento máximo de uma linha de comando no Mac OS X?

11

Estou gerando modelos no Ruby on Rails, e algumas dessas tabelas têm muitas colunas. Qual é a duração máxima de um comando no Mac OS X?

DGM
fonte

Respostas:

15

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 .

Kamil Kisiel
fonte
1
No Solaris 10, é 1048320 - ambos são tão grandes que incomodam a mente que alguém pode ficar sem ele.
31411 Jonathan Leffler
Excelente. Eu acho que eu estava fora ainda. rsrs
DGM
1
No macOS 10.12, o limite ainda é 262.144 (256 KB). Observe que o limite se aplica somente ao invocar utilitários externos , não nos shell internos. Compare echo "$(printf "%$(getconf ARG_MAX)s")"com/bin/echo "$(printf "%$(getconf ARG_MAX)s")"
mklement
High Sierra (10.13.1) aqui, ainda 262144.
Siu Ching Pong -Asuka Kenji-
@ JonathanLeffler A pesquisa em alguns milhares de arquivos rapidamente tornará esse número muito pequeno.
Clearer
1

Depende do shell, mas a última vez que executei um script de configuração usando o zsh no 10.6, eram 65535 caracteres.

Amok
fonte