Aggressize standard stream buffering negli ultimi Command Line Tools (6.1)

1

Ho appena aggiornato i miei "strumenti della riga di comando" tramite il processo di aggiornamento di App Store.app alla versione 6.1. Sembrava installare bene, ma molti strumenti di riga di comando comunemente usati ora hanno un buffer molto più aggressivo (presumibilmente, una dimensione del buffer buffer molto più grande).

Ad esempio:

  • grep : in precedenza non dovevo usare --line-buffered per ottenere un risultato immediato, ora lo faccio.
  • jq : offre un'opzione --unbuffered , con l'effetto desiderato, simile a grep

Non devo usare queste opzioni quando sono l'ultimo elemento nel mio comando di pipe, cioè quando l'output è un TTY; il buffering entra in gioco quando li inserisco in un comando successivo (anche solo cat ).

Preferirei avere buffer di piccole dimensioni mentre sto lavorando sulla riga di comando. C'è qualche preferenza di sistema / estensione del kernel in cui posso ripristinare il comportamento degli strumenti di streaming come grep ? Qualche variabile stdout_default_buffer_block_size che si applica globalmente (o almeno all'interno della mia sessione shell)?

    
posta chbrown 17.10.2014 - 20:49
fonte

0 risposte

Leggi altre domande sui tag