Talvez a saída não vá para o stdout. Experimente jack_cpu_load 2>&1 | sed -n 8p
Ou é um problema de buffer. Experimente stdbuf -i0 -o0 -e0 jack_cpu_load | sed -n 9p
No shell, quando cano jack_cpu_load
a sed
ou cut
, não importa as opções que eu uso, a impressão é interrompida antes das linhas que desejo ver.
jack_cpu_load | sed -n 8p
será impresso:
Jack: JackClient::kActivateClient name = jack_cpu_load ref = 4
A próxima linha deve ler algo como jack DSP load 0.294772
, que é o que estou procurando, mas quando executo jack_cpu_load | sed -n 9p
, que deveria imprimir essa linha, não há nada. Apenas um cursor, até eu pressionar Ctrl + C e matá-lo.
Saída de terminal:
tony@hydra ~ $ jack_cpu_load
Jack: JackClient::SetupDriverSync driver sem in flush mode
Jack: JackPosixSemaphore::Connect name = jack_sem.1000_default_jack_cpu_load
Jack: JackPosixSemaphore::Connect sem_getvalue 0
Jack: Clock source : system clock via clock_gettime
Jack: JackLibClient::Open name = jack_cpu_load refnum = 4
Jack: JackClient::Activate
Jack: JackClient::ClientNotify ref = 4 name = jack_cpu_load notify = 2
Jack: JackClient::kActivateClient name = jack_cpu_load ref = 4
jack DSP load 0.163633
jack DSP load 0.159914
jack DSP load 0.159449
jack DSP load 0.164087
jack DSP load 0.159971
^CJack: jack_client_close
Para isso:
tony@hydra ~ $ jack_cpu_load 2>&1 | sed -n 8p
Jack: JackClient::kActivateClient name = jack_cpu_load ref = 4
E para isso:
tony@hydra ~ $ jack_cpu_load 2>&1 | sed -n 9p
Não há nada.
A saída para strace -f jack_cpu_load link
Tags jack shell-script dsp