Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: grabbing dmidecode memory data - there's got to be a better way

by RichardK (Priest)
on Dec 28, 2012 at 20:01 UTC ( #1010741=note: print w/ replies, xml ) Need Help??


in reply to grabbing dmidecode memory data - there's got to be a better way

Does using the quiet flag dmidecode -q make the job any easier?

I'm certainly seeing less info to parse here :-)


Comment on Re: grabbing dmidecode memory data - there's got to be a better way
Download Code
Re^2: grabbing dmidecode memory data - there's got to be a better way
by Tommy (Chaplain) on Dec 28, 2012 at 20:23 UTC

    Yes, that does make for more concise output. After the regex that pulls the mem info into blocks, I'll have to do more work to pull out the useful bits for the higherups, namely socket, size, and locator. Less text will be easier (and faster) to process.

    Thanks.

    --
    Tommy
    $ perl -MMIME::Base64 -e 'print decode_base64 "YWNlQHRvbW15YnV0bGVyLm1lCg=="'

      dmidecode has even more useful switches:

      -s KEYWORD
      --string KEYWORD
      Only display the value of the DMI string identified by KEYWORD. [...]
      -t TYPE
      --type TYPE
      Only display the entries of type TYPE. TYPE can be either a DMI type number, or a comma-separated list of type numbers, or a keyword from the following list: bios, system, baseboard, chassis, processor, memory, cache, connector, slot. Refer to the DMI TYPES section below for details. [...]
      -u
      --dump
      Do not decode the entries, dump their contents as hexadecimal instead. [...]
      --dump-bin FILE
      Do not decode the entries, instead dump the DMI data to a file in binary form. [...]

      You could use -s and -t to filter inside dmidecode, so that you have less data to process.

      The -u switch generates a slightly more predictable format. You could decode the hexdumps inside perl, using knowledge from DMI::Decode (i.e. copy and port the C code from there to perl).

      The --dump-bin switch delivers the raw DMI data, which you could decode all by yourself, again by using knowledge from DMI::Decode.

      Alexander

      --
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)

        Good stuff. Thanks afoken!

        --
        Tommy
        $ perl -MMIME::Base64 -e 'print decode_base64 "YWNlQHRvbW15YnV0bGVyLm1lCg=="'

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1010741]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (8)
As of 2014-07-12 22:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (241 votes), past polls