如何获取文件中的第一个非注释行号



>我有一个大文件,标题中可能有一些注释

# Comment line 1
# Comment line 2
# ...
# Comment line ...
# ...
# Comment line N
123
234
345
...

我需要一个单行解决方案来获取数字"N+1",使用 shell 脚本实现此目的最优雅的方法是什么?谢谢

试试这个sed单行:

sed  -n '/^s*#/!{p;q}' file

好的,如果您只需要行号:

sed  -n '/^s*#/!{=;q}' file

添加简短说明:

/^s*#/! : regex, if the line does NOT start with 0 or more empty chars (tab/space)then a '#', the line is chosen for further step.
=  : print line no
q  : quit processing

awk 版本:

awk '$1~/^[^#]/{print NR; exit}' file

相关内容

  • 没有找到相关文章

最新更新