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=="'
| [reply] [d/l] |
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". ;-)
| [reply] [d/l] [select] |
| [reply] [d/l] |