Acabo de actualizar mis "Herramientas de línea de comandos" mediante el proceso de actualización de App Store.app a la versión 6.1. Parecía instalarse bien, pero muchas de las herramientas de línea de comandos comúnmente utilizadas tienen un búfer mucho más agresivo (probablemente, un tamaño de bloque de búfer mucho más grande).
Por ejemplo:
-
grep
: anteriormente no tenía que usar--line-buffered
para obtener resultados inmediatos, ahora sí. -
jq
: ofrece una opción--unbuffered
, con el efecto deseado, similar agrep
No tengo que usar estas opciones cuando son el último elemento de mi comando canalizado, es decir, cuando la salida es un TTY; el búfer entra en juego cuando los canalizo en un comando posterior (incluso solo cat
).
Preferiría tener búferes predeterminados pequeños mientras estoy dando vueltas en la línea de comandos. ¿Existe alguna preferencia del sistema / extensión del kernel donde pueda revertir el comportamiento de las herramientas de transmisión como grep
? ¿Alguna variable stdout_default_buffer_block_size
que se aplique globalmente (o al menos dentro de mi sesión de shell)?