como definir vários espaços em branco (ex: tabs) como delimitadores no `cut` do bash


0

Quero recuperar o uso da CPU / porcentagem livre da saída mpstat. O bash cutpode ser usado para recuperar esses detalhes, mas eu não sei o que deve ser o viz delimitador.

[idlecool @ archbitch proc] $ mpstat | grep "tudo" | cut -d '$ x' -f11

o que deve ser $ x para que eu possa pular espaços em branco e selecionar o valor correspondente a% ocioso?

Saída do mpstat:

[idlecool@archbitch proc]$ mpstat 
Linux 2.6.36-ARCH (archbitch)   01/14/11    _i686_  (2 CPU)

19:58:53     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
19:58:53     all    5.51    0.01    2.96    0.84    0.00    0.01    0.00    0.00   90.66

Respostas:



5

O delimitador deve ser espaço. No entanto, mpstatusa vários espaços entre os campos impressos para alinhamento. Portanto, você também precisa trespremer vários delimitadores.

mpstat | grep -F all | tr -s ' ' | cut -d ' ' -f 11

Nota: o sinalizador -F para grep não é essencial nesse caso, embora eu costumo usá-lo sempre que o padrão não é um regex, pois acelera significativamente as pesquisas em grandes entradas.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.