如何使用与 FindBin 等效的 Raku 加载与 Raku 中的脚本相关的模块

Kon*_*ele 6 module raku

假设我在一个目录中有 2 个文件

p.pl  
Mod.pm
Run Code Online (Sandbox Code Playgroud)

在 perl5 中,我可以通过以下方式从 p.pl 加载模块 Mod.pm:

use FindBin qw($Bin);
use lib "$Bin";
...
use Mod;
Run Code Online (Sandbox Code Playgroud)

我想知道Raku等价物是什么(如果文件是 p.raku 和 Mod.rakumod)?

我想要完成的是加载一个相对于脚本的模块。

  • 我想在启动脚本之前不设置 env 变量的情况下执行。
  • 我不想用 zef 安装模块。
  • 我不想被强制设置CWD到scripts目录,这意味着如果p.raku和Mod.rakumod在目录D1是反过来目录D0我希望能够运行cd d0; rakudo d1/p.raku以及cd d1; rakudo p.raku

Kon*_*ele 7

正如 ValleLukas 解释的那样:

use lib $*PROGRAM.dirname
use Mod;
Run Code Online (Sandbox Code Playgroud)

可以使用。