Ruby 3.1 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Kernelモジュール > $.

variable $.

$. -> Integer[permalink][rdoc]

いずれかの IO オブジェクトが最後に読んだ行の行番号です。 Object::ARGF などの IO 互換のオブジェクトも $. を更新します。

IO からの読み込みが起きるタイミングが予測不能であるような複雑なプログラムでは使用すべきではありません。特に、マルチスレッドプログラムではスレッド間で競合を起こす可能性があります。そのような場合には、 IO#lineno を使用してください。

この変数はグローバルスコープです。 Ruby起動時の初期値は 0 です。