我在 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
這很可能是其他人在該文件不可執行中提到的。有時,它是別的東西。
如果 shebang (#!/bin/sh
或等效的)不正確,我已經看過 shell 報告file not found
,或者command not found
即使它是有一個可執行檔。當我看到它時,這是一個 perl 腳本的情況,該#!/usr/local/bin/perl
腳本perl
位於 /usr/bin 中。
只是想我會加入另一個潛在的原因。