Answers:
尝试scripts/diffconfig
从Linux内核源代码树使用。
用法:
diffconfig config-a config-b
显示有关config-a删除,修改和添加到config-b文件中的行的列表。
内核源代码中有一个脚本。
脚本/kconfig/merge_config.sh
它需要两个内核配置作为参数-它将第二个合并到第一个。第二个配置中的任何内容都将覆盖第一个配置-即使它是“未设置#CONFIG_”这样的行
参见http://processors.wiki.ti.com/index.php/Quick_start_with_3.14_linux
如果这两个文件是由生成的make menuconfig
,则它们将具有相同顺序的选项,因此简单的操作diff
(通过Meld或您喜欢的任何前端)将提供可用的结果。
如果您忽略注释行,则可能会使内容更具可读性:
diff -I '^#' old.config new.config
如果由于某种原因文件的顺序不同,则可以对它们进行排序。这有将相关选项分开的缺点。同样,删除评论。使用comm
以剥离公共线。
comm -3 <(<old.config grep '^[^#]' | sort) <(<new.config grep '^[^#]' | sort)