1

我在看这个 Perl 单线

perl -n -e 'print "$. - $_"' file

它说这一个班轮被转换成这个:

LINE:
  while (<>) {
    print "$. - $_"
  }

这很好,我只是不知道是什么LINE:。它看起来不像一个文件句柄,如果它是一个变量,它$sign前面没有一个。

我的猜测是它类似于@F:一个仅在 Perl 单行中使用的习语。只是LINEPerl 在命令行的单行代码中使用的东西吗?

4

1 回答 1

7

这是一个标签。它们提供了一种在代码中标记位置的方法。使用标签不是惯用的,因为它们很少需要。标签可以与某些命令一起使用,即next、和。lastredogoto

标签是后跟冒号的裸词,例如LINE:

更多信息可以在perldoc perlsyn中找到

于 2013-10-25T16:13:55.407 回答