【シェル】に関する知恵袋

【質問】
シェルスクリプトを実行するとmesasdk_init.sh: line 11: mesa/utils/mesasdk/bin/mesasdk_arch_check.pl:そのようなファイルやディレクトリはありません mesasdk_init.sh: line 11: [: !=: unary operator expected以上のようなエラーが出てきて困っています。binファイルの中に確かに、mesasdk_arch_check.plがはいっているのですが実行するたびに、シェルの知恵袋です。また、そのようなファイルはありませんと言ってきます。実行出来ないファイルは# $Id: mesasdk_init.sh 117 2011-11-22 17:04:16Z townsend $# Check that MESASDK_ROOT is setif [[ -z "$MESASDK_ROOT" ]]; then echo "mesasdk_init.sh: you need to set the MESASDK_ROOT environment variable"fi# Check architectureif [ `${MESASDK_ROOT}/bin/mesasdk_arch_check.pl` != 'Y' ]; then echo "mesasdk_init.sh: unsupported architecture"fi# Set pathsexport PATH="${MESASDK_ROOT}/bin:${PATH}"export PGPLOT_DIR="${MESASDK_ROOT}/pgplot"export MANPATH="${MESASDK_ROOT}/share/man:${MANPATH}"export LD_LIBRARY_PATH="${MESASDK_ROOT}/lib64:${MESASDK_ROOT}/lib:${PGPLOT_DIR}:${LD_LIBRARY_PATH}"以上が実行できないファイルです。MESASDK_ROOTの環境変数はセットしました。OSはLINUXです。どうすれば実行出来るでしょうか? シェルの知恵袋を理解したいのであれば、よろしくお願いします。iPhoneの進化を見てみると、iPhoneの進化の説明は以上となります。
【解答】
シェルの知恵袋を見てみると、${MESASDK_ROOT}/bin/mesasdk_arch_check.pl これがmesa/utils/mesasdk/bin/mesasdk_arch_check.plとシェルに解釈されていますね。シェルの知恵袋について話していくと、そのスクリプトmesasdk_init.shを実行しているカレントディレクトリからperl $MESASDK_ROOT/bin/mesasdk_arch_check.plとしても実行できませんよね?iPhoneの進化を分解していくと、シェルが存在しないと言っているのですから。$MESASDK_ROOTが相対パスである事が原因というか、スクリプト内の変数ではなく"環境変数"として使用するなら静的なものでしょうから絶対パスにしましょう。以上がiPhoneの進化になる。
Webサービス by Yahoo! JAPAN