Ubuntu Linux 12.04 LTS のディレクトリに run.sh があります。ディレクトリ構造内の他の場所にあるバイナリを「表示」できるように Path 変数を変更しています。しかし、フルパスを指定してもコマンドが見つからないというエラーが引き続き発生します。Linux に関する基本的な知識しかありません。何が起こっているのでしょうか。なぜ run.sh が表示されないのでしょうか。
memsql@memsql-virtual-machine:~/voltdb/doc/tutorials/helloworld$ sudo /home/memsql/voltdb/doc/tutorials/helloworld/run.sh
sudo: /home/memsql/voltdb/doc/tutorials/helloworld/run.sh: command not found
memsql@memsql-virtual-machine:~/voltdb/doc/tutorials/helloworld$ ls
Client.class deployment.xml Insert.class log run.sh Select.java
Client.java helloworld.sql Insert.java README Select.class statement-plans
memsql@memsql-virtual-machine:~/voltdb/doc/tutorials/helloworld$ pwd
/home/memsql/voltdb/doc/tutorials/helloworld
答え1
実行可能にしてからchmod a+x run.sh
もう一度試してください。
これにより、ファイルが実行可能になります。
答え2
おそらく、ファイルが実行可能ではないという他の誰かが言及した内容です。場合によっては、他の理由もあります。
もしシェバン(#!/bin/sh
または同等のもの)が間違っている場合は、シェルレポートを見たことがあるfile not found
がcommand not found
、は実行ファイルがあります。私が見たときは、/usr/bin にあった#!/usr/local/bin/perl
perlスクリプトのケースでした。perl
もう一つの潜在的な原因を挙げてみました。