| On Feb 14, 2002 08:48 -0800, Randy.Dunlap wrote:
| > gziphdr=`binoffset $1 0x1f 0x8b 0x08 0x0`
| > # increment by 1 since tail offsets are 1-based, not 0-based
| > gziphdr=$((gziphdr + 1))
| >
| > tail -c +$gziphdr $1 | gunzip > $1.tmp
| > strings $1.tmp | grep CONFIG_ > $1.old.config
| > rm $1.tmp
|
| How about something like the below (avoids writing a multi-MB temp file):
|
| HDR=`binoffset $1 0x1f 0x8b 0x08 0x0`
| dd if=$1 bs=1 skip=$HDR | zcat | strings /dev/stdin | grep CONFIG_
I tried that, but I didn't know about /dev/stdin,
so I agree with you.
I had tried 'strings -', but strings didn't like that. :(
| Note also that it is enough to store the config options without the
| leading CONFIG_ part, and then use 'grep "[A-Z0-9]*=[ym]$"' to get
| the actual config strings. You can add a final 'sed "s/^/CONFIG_/"'
| step to return it to the original format. So:
|
| dd if=$1 bs=1 skip=$HDR | zcat | strings /dev/stdin | grep "[A-Z0-9]=[ym]$" \
| | sed "s/^//CONFIG_"
| --
Yes, I said that I intended to remove the leading "CONFIG_".
I'll do that soon and package it all up and repost it.
Oh, and make it a CONFIG option.
Thanks for your help.
-- ~Randy- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/