如何连续提取整行,例如第3行.这些数据保存在linux的文本编辑器中.这是我的数据:
1,julz,kath,shiela,angel 2,may,ann,janice,aika 3,christal,justine,kim 4,kris,allan,jc,mine
我想输出像:
3,christal,justine,kim
paxdiablo.. 12
以下代码段读取前三行,仅打印第三行然后退出以确保不会发生不必要的处理.
如果没有退出,脚本将继续处理输入文件,尽管您知道您没有使用它.
perl -ne 'if ($. == 3) {print;exit}' infile.txt
正如perlvar指出的那样,$.
是访问的最后一个文件句柄的当前行号.
以下代码段读取前三行,仅打印第三行然后退出以确保不会发生不必要的处理.
如果没有退出,脚本将继续处理输入文件,尽管您知道您没有使用它.
perl -ne 'if ($. == 3) {print;exit}' infile.txt
正如perlvar指出的那样,$.
是访问的最后一个文件句柄的当前行号.
$ perl -ne'print if $. == 3' your_file.txt
以下是@ ysth的答案的脚本版本:
$ perl -mTie::File -e'tie @lines, q(Tie::File), q(your_file.txt); > print $lines[2]'
如果它始终是第三行:
perl -ne 'print if 3..3'outfile
如果它始终是数字值为"3"的第一列:
perl -F, -nae 'print if $F[0] == 3'outfile # thanks for the comment doh!
既然你没有说明你是如何确定这条线的,那我就提供了另类选择.