linux – 使用cat和grep打印行及其编号,但同时忽略空行教程
我创建了一个简单的脚本,使用cat命令打印文本文件的内容.现在我想打印一条线及其编号,但同时我需要忽略空行.需要以下格式:
1 George Jones Berlin 2564536877
2 Mike Dixon Paris 2794321976
我试过用
cat -n catalog.txt | grep -v '^$' catalog.txt
但我得到以下结果:
George Jones Berlin 2564536877
Mike Dixon Paris 2794321976
我设法摆脱了空白行,但没有打印行号.我究竟做错了什么?
以下是catalog.txt的内容:
George Jones Berlin 2564536877
Mike Dixon Paris 2794321976
解决方法:
您的解决方案不起作用,因为cat -n catalog.txt已经为您提供了非空行.
你可以将grep的输出传递给cat -n:
grep -v '^$' yourFile | cat -n
例:
的test.txt:
Hello
how
are
you
?
$grep -v '^$' test | cat -n
1 Hello
2 how
3 are
4 you
5 ?