¿Cuál es la longitud máxima de una línea de comando en Mac OS X?


11

Estoy generando modelos en Ruby on Rails, y algunas de estas tablas tienen muchas columnas. ¿Cuál es la longitud máxima de un comando en Mac OS X?

Respuestas:


15

El límite no está en bash sino en su sistema operativo. Se define por el valor de ARG_MAXen su sistema operativo limits.h. Puede obtener el valor ejecutando getconf ARG_MAX. En mi máquina OSX 10.5 (y la mayoría de los otros sistemas BSD) es 262144. Puede leer más sobre este límite aquí .


1
En Solaris 10, es 1048320, ambos son tan grandes que aturden la mente de que alguien podría quedarse sin él.
Jonathan Leffler

Excelente. Supongo que ya estaba lejos. lol
DGM

1
A partir de macOS 10.12, el límite sigue siendo 262.144 (256 KB). Tenga en cuenta que el límite solo se aplica cuando se invocan utilidades externas , no con shell incorporado. Comparar echo "$(printf "%$(getconf ARG_MAX)s")"con/bin/echo "$(printf "%$(getconf ARG_MAX)s")"
mklement

High Sierra (10.13.1) aquí, todavía 262144.
Siu Ching Pong -Asuka Kenji-

@JonathanLeffler Buscar entre miles de archivos hará que ese número sea muy pequeño.
Más claro

1

Depende del shell, pero la última vez que ejecuté un script de configuración usando zsh en 10.6 tenía 65535 caracteres.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.