Pular para o conteúdo

dados de IO

Responder tópico
  • Denunciar
  • Indicar

1. dados de IO

Enviado em 30/01/2012 - 15:40h

estou rodando este comando para pegar dados de IO , mas esta dando erro...poderiam me ajudar?


cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$4}’
Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.
awk: ‘{print
awk: ^ invalid char '�' in expression

Responder tópico

2. Re: dados de IO

Enviado em 30/01/2012 - 15:47h

testa assim

cat /proc/diskstats | grep $1 | head -1 | awk '{print $4}'

3. Re: dados de IO

Enviado em 30/01/2012 - 15:48h

mesmo erro....

cat /proc/diskstats | grep $1 | head -1 | awk '{print $4}'
Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.

4. Re: dados de IO

Enviado em 30/01/2012 - 15:49h

o que seria esse grep $1 ?

5. Re: dados de IO

Enviado em 30/01/2012 - 15:53h

sera que tem que troca pelo fS?? tipo......sdb,sdb1

6. Re: dados de IO

Enviado em 30/01/2012 - 18:06h

O seu parâmetro 1 ($1), pode conter espaços ou caracteres especiais.
Caso o $1 tenha espaços coloque entre aspas duplas.
Caso contenha caracteres especiais, insira uma barra invertida na frente do mesmo.

7. Re: dados de IO

Enviado em 30/01/2012 - 20:57h

Primeiro: Você está executando isso dentro de um script? Se sim, está passando algum parâmetro para ele? Note que esse $1 deve existir ou o grep estaria recebendo apenas a saída do comando cat /proc/diskstats, sem qualquer referência ao padrão a ser procurado.

Segundo, você não precisa do comando cat e nem do head. Faça algo como


grep "padrão" /proc/diskstats | awk 'NR == 1 { print $4 }'


Note também o fato de que eu usei uma aspas simples (') com o awk. Dependendo do caso, você pode até mesmo eliminar o grep da jogada e usar somente o awk.

8. Re: dados de IO

Enviado em 30/01/2012 - 21:31h

Pode fazer assim:

cat /proc/diskstats | grep ${1:-nadicadenadaaaaa} | head -1 | awk '{print $$4}'

Observe o grep ${1:-nadicadenadaaaaa}, isso faz com que caso o parâmetro $1 esteja vazio, seja usado o valor 'nadicadenadaaaaa' (ou qualquer outro que vc queira), com isso vc não corre risco de ter erros ao usar algumas variáveis.

exemplo bem útil disso


# rm -rf ${diretorio:-naofacaissoooooooooooooooooooooooooo}

assim não corre o risco de deletar algo que não seja o valor esperado em $diretorio


Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder