我有一些 C 源文件,其中很多文件顶部都有一行注释,简要描述了该程序的功能(我还没有做过足够复杂的事情来写一段话)。我想知道是否可以使用 head 查看第一个,#
因为那将是我的第一个预处理器指令。如果它打印行号,那也将是一个额外的好处。
答案1
Grep 可能是更好的解决方案,使用上下文切换-B
:
grep -B999 -m 1 "^#" file.c
或者,使用较长的选项名称:
grep --before-context 999 --max-count 1 "^#" file.c
这将找到模式"^#"
(以“#”开头的行),显示最多 999 行前其中,“^#”的最大数量为 1。
因此,基本上,找到第一个“^#”,显示其前 999 行,然后退出。您可能希望通过 head 管道删除找到的“^#”:
grep -B999 -m1 "^#" file.c | head -n -1
这将切断最后一行。
我同意这-B999
可能有点过分,但我不愿意在你写得太多之后就切断你以后的写作。当然,要适当调整。