dados de IO

1. dados de IO

andre
negu

(usa Outra)

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


  


2. Re: dados de IO

Daniel Lara Souza
danniel-lara

(usa Fedora)

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

testa assim

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


3. Re: dados de IO

andre
negu

(usa Outra)

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

Daniel Lara Souza
danniel-lara

(usa Fedora)

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

o que seria esse grep $1 ?


5. Re: dados de IO

andre
negu

(usa Outra)

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

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


6. Re: dados de IO

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

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

Elder Marco
eldermarco

(usa Fedora)

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

Raimundo Alves Portela
rai3mb

(usa Outra)

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








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts