in reply to Re^2: grabbing dmidecode memory data - there's got to be a better way
in thread grabbing dmidecode memory data - there's got to be a better way

You could simplify the split to \n\n+ or something similar, but then you need to modify something else to keep the records newline separated. I'm willing to go to pretty extreme lengths to keep print if /RAM socket/ && !/Not Installed/ clean just because of personal taste. TIMTOWTDI.

dmidecode | perl -e 'undef $/;/RAM socket/ && !/Not Installed/ && s/$/\n\n/ && print for split /\n\n+/, <>'


#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

Replies are listed 'Best First'.
Re^4: grabbing dmidecode memory data - there's got to be a better way
by Tommy (Chaplain) on Dec 28, 2012 at 19:54 UTC

    That's another good example. Less clear than your first, but still much less ugly than my original line-by-line cherry picker.

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