質問

PerlでシンプルなMOTDScriptを書いています。これは、特定のWebサイトからのメッセージを解析し、端末画面の中央に表示します。

端末の幅を取得するには、CPANモジュール用語:: ReadKeyを使用します。
今、私はこのスクリプトと呼んでいます

command /path/to/script

私から .bashrc ログインと端末を開くときに表示します。

私のスクリプトは、Perl経由または使用してログインしているときに電話をかけているときに正常に動作します

source .bashrc

しかし、端末(スクリプトの実際の目的です)の最初のオープニングでは、このエラーメッセージが表示されます。

Can't locate Term/ReadKey.pm in @INC (you may need to install the Term::ReadKey module) (@INC contains: /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at /path/to/perl-motd.pl line 6.
BEGIN failed--compilation aborted at /path/to/perl-motd.pl line 6.

スクリプトの6行目はです

use Term::ReadKey;
役に立ちましたか?

解決

最初に、そのモジュールがインストールされている場所を見つけます: locate Term/ReadKey.pm

発見されていない場合は、インストールする必要があります(sudoが必要な場合があります): cpan Term::ReadKey

すでにインストールされている場合、Perlにどこにあるかを伝える必要があります。

use lib '/path/to';   # assuming it's installed as "/path/to/Term/ReadKey.pm"
use Term::ReadKey;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top