0

perl ライブラリの場所を見つける必要があります。どうすればよいですか? これがpythonに与えるものに似たもの...

python -c "import sys; print sys.path"

ありがとう

4

3 に答える 3

2

ロードされたモジュールの物理的な場所は、%INCハッシュにあります。

  • %INC

    ハッシュには、、、または演算子によって含まれる各ファイル名のエントリが含ま%INCれます。キーは指定したファイル名 (モジュール名はパス名に変換されます) で、値は見つかったファイルの場所です。オペレーターは、このハッシュを使用して、特定のファイルが既に含まれているかどうかを判別します。dorequireuserequire

    ファイルがフック (サブルーチン参照など。これらのフックの説明についてはrequire%INCを参照) を介してロードされた場合、このフックはデフォルトでファイル名の代わりに挿入されます。ただし、%INCより具体的な情報を提供するために、フック自体がエントリを設定している可能性があることに注意してください。

私のシステムでのランダムモジュールの使用例:

$ perl -MFile::Slurp -e 'print $INC{"File/Slurp.pm"}'
/Users/miller/perl5/perlbrew/perls/perl-5.20.0/lib/site_perl/5.20.0/File/Slurp.pm
于 2014-09-23T04:57:22.597 に答える
2

モジュールが検索されるすべての場所をリストします。perl -E 'say for @INC'

モジュールがロードされた実際のファイルをすべてリストします。perl -E 'say for keys %INC'

于 2014-09-23T08:27:30.513 に答える
1

@INC変数の内容を出力します。

perl -e 'print "@INC\n";'

@INCモジュールを見つけるために Perl が検索するすべてのパスが含まれます。

于 2014-09-23T06:26:35.900 に答える