如何在 "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,然后它只由需要它的东西支付。