如何在 "raku -n" 迭代期间获取当前行号?
How to get current line number during "raku -n" iteration?
在 Perl 中我可以:
cat file.txt | perl -nE 'say $.'
我找到的最接近的 Raku 解决方案(不使用状态计数器变量)returns 以字节为单位的位置:
cat file.txt | raku -ne 'say $*IN.tell'
LN module 可能是您要使用的。
为它使用一个状态变量并递增它。最方便的是,有匿名状态变量 $
,意思是可以这样做:
echo -e "foo\nbar\nbaz" | perl6 -ne 'say $++ ~ ": $_"'
给出:
0: foo
1: bar
2: baz
使用 ++$
代替以 1 为基数的编号。手柄没有内置任何特殊功能;它完全不属于状态变量,或者对于显式迭代,.lines.kv
,然后它只由需要它的东西支付。
在 Perl 中我可以:
cat file.txt | perl -nE 'say $.'
我找到的最接近的 Raku 解决方案(不使用状态计数器变量)returns 以字节为单位的位置:
cat file.txt | raku -ne 'say $*IN.tell'
LN module 可能是您要使用的。
为它使用一个状态变量并递增它。最方便的是,有匿名状态变量 $
,意思是可以这样做:
echo -e "foo\nbar\nbaz" | perl6 -ne 'say $++ ~ ": $_"'
给出:
0: foo
1: bar
2: baz
使用 ++$
代替以 1 为基数的编号。手柄没有内置任何特殊功能;它完全不属于状态变量,或者对于显式迭代,.lines.kv
,然后它只由需要它的东西支付。