[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gawk - Consulta sobre sintaxis...



2013/1/5 Walter O. Dari <wlinuxw@gmail.com>:
> Hola gente:
>
> Buen año para todos antes que nada.
>
> Resulta que quiero aislar el entero de la temperatura que me arroja el
> comando sensors para los distintos cores...
>
> wodari@debi5:~$ sensors | grep Core
> Core 0:         +38.0°C  (high = +80.0°C, crit = +99.0°C)
> Core 1:         +40.0°C  (high = +80.0°C, crit = +99.0°C)
> Core 2:         +41.0°C  (high = +80.0°C, crit = +99.0°C)
> Core 3:         +46.0°C  (high = +80.0°C, crit = +99.0°C)
>
> ... tomando de a una línea por vez ...
>
> wodari@debi5:~$ sensors | grep "Core 0"
> Core 0:         +38.0°C  (high = +80.0°C, crit = +99.0°C)
>
> De la línea de arriba me interesa sólo el valor entero 37.
>
> Con...
>
> wodari@debi5:~$ sensors | grep "Core 0" | gawk '//{print $3}'
>
> ... obtengo   +38.0°C
>
> A lo bruto, y presuponiendo que el valor va ha ser siempre de 2 dígitos, la
> hacía así...
>
> wodari@debi5:~$ sensors | grep "Core 0" | gawk '//{print substr($3,2,2)}'
> 38
>
> ... pero me parece más prolijo ubicar el "+" y el "." y obtener lo que queda
> dentro.
>
> Entonces hice lo siguiente...
>
> wodari@debi5:~$ sensors | grep "Core 0" | gawk '//{print
> substr($3,match($3,"+")+1,2)}'
> 38
>
> ... ubicando la posición del "+", sumo 1 y desde ahí se que está la
> temperatura y tomo los 2 dígitos. Pero quisiera mejorarlo y obtener la
> posición del "." porque si el valor fuera de 1 dígito o 3 dígitos esto ya no
> funcionaría. Y aquí se me presenta el problema, cuando busco el "." con
> match($3,".") me devuelve el valor 1 y en realidad debería ser 4. Supongo
> que debe ser un problema en la forma de indicarle el punto. ¿llevará algún
> otro tipo de comillas para que lo interprete?
> A cualquiera de los otros caracteres de la cadena "+38.0°C" los ubica bien,
> con el "." no hay caso.
>
>
> Bueno, espero que me entiendan y me den alguna idea.
>
> Anticipadas gracias y saludos.
>
>
> --
>
> Walter O. Dari
>
> http://swcomputacion.com/
> skype: waomda
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmaster@lists.debian.org
> Archive: [🔎] 50E7B6E7.60802@gmail.com">http://lists.debian.org/[🔎] 50E7B6E7.60802@gmail.com
>

Hola a todos y feliz año tambien..

He contribuido poco en la lista..

Yo lo haria de esta forma:

sensors | cut -d "." -f 1 | cut -d "+" -f 2

Si no resuelve tu problema. disculpa.. pues no te comprendí bien y
esto hace lo que pides y es lo que se me ha ocurrido.

Mis disculpas a todos si no bindo solución a tu problema.. pues no
recuerdo si especificamente querias emplear awk

Avisame para ayudarte.

Saludos y Exito




--
Johnnatan Malpica


Reply to: