端末でコマンドが見つかりません!

端末でコマンドが見つかりません!

Mac OSXに最新バージョンのPerlをインストールするためにBrewを使用し、PerlはCPANからダウンロードしたPerlパッケージの独自のディレクトリを作成するためにlocal :: libを使用するように求められました。私のコマンドの記録は次のとおりです。

  431  brew install perl
#recommended to do by brew
  432    PERL_MM_OPT="INSTALL_BASE=$HOME/perl5" cpan local::lib
  433    echo 'eval "$(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)"' >> ~/.bash_profile
#executing recommendation
  434  sudo   PERL_MM_OPT="INSTALL_BASE=$HOME/perl5" cpan local::lib
  436  echo 'eval "$(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)"' >> ~/.bash_profile
  437  perl program.pl

その後、Perlスクリプトを実行しようとすると、次のエラーが発生します。

Can't locate getopts.pl in @INC

だからgetopt.plを置き換えるGetopt :: Stdをインストールしました。

sudo cpan> install Perl4::CoreLibs

これでPerlスクリプトが正常に動作します。ただし、上記のすべてのインストールを実行した端末でのみ機能します。その後、「python」や「open -a TextEdit ~ / .bash_profile」などの他の環境変数を呼び出して実行できることを確認しようとしましたが、次のような結果が得られました。

-bash: command: command not found

bash_profileファイルを探してみましたが、どこにも見つからないようです。新しいディレクトリが作成されたときにファイルが削除された可能性があります。パス変数を見つけようとすると、次のような結果が出ますが、どのように解釈するのかわかりません。

    echo PATH=$PATH
PATH="/Users/miseq/perl5/bin${PATH:+:${PATH}}"; export PATH; PERL5LIB="/Users/miseq/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB; PERL_LOCAL_LIB_ROOT="/Users/miseq/perl5${PERL_LOCAL_LIB_ROOT:+:${PERL_LOCAL_LIB_ROOT}}"; export PERL_LOCAL_LIB_ROOT; PERL_MB_OPT="--install_base \"/Users/miseq/perl5\""; export PERL_MB_OPT; PERL_MM_OPT="INSTALL_BASE=/Users/miseq/perl5"; export PERL_MM_OPT;

また、新しい端末を開くと、次のメッセージが表示されます。

-bash: perl: command not found

これにより、私が実行したPerlのインストールがシェルから環境変数を呼び出すことができないという問題が発生したと考えました。助けが必要ですか?

非常にありがとう

ベストアンサー1

投稿したコマンドは正しいようですが、最終結果は間違いなく.bash_profile正しくありません。これパス変数シェルおよび他のプログラム照会コマンドを含むディレクトリーのリスト。このリストはコロン()で結合された項目として表示されます:。たとえば、単純なPATHは/usr/local/bin:/usr/bin:/binシェルコマンドを使用して設定されます。

PATH=/usr/local/bin:/usr/bin:bin

その後、コマンドを入力すると、lsシェルは最初に検索し、次に/usr/local/bin/lsforを見つけて、最初に見つけた/usr/bin/lsコマンド/bin/lsを実行します。

あなたの場合、変数の内容は実際のディレクトリのリストではなく、変数を設定するためのガイドラインです。ディレクトリリストには標準ディレクトリが含まれていないため、シェルはいくつかの組み込みコマンドを除いてどのコマンドも見つけることができません。

ファイルを編集し、~/.bash_profile誤ったPATH設定を削除してから、新しい端末を開きます。行の先頭に入れて#コメントアウトすることができます。端末でファイルを編集するには、まず上記のようなPATH合理的なファイルを設定します(コマンドラインでこのファイルを実行すると、その端末内でのみ機能します)。

何が良いのか、何が悪いのかわからない場合は、質問を修正して内容をコピーして貼り付けてください~/.bash_profile

おすすめ記事