1. 程式人生 > >伺服器上自己新建sh檔案執行Permission denied的解決辦法

伺服器上自己新建sh檔案執行Permission denied的解決辦法

最近在研究caffe的時候,遇到了一個問題坑了好久。寫了一個caffe測試已有模型的精度的sh檔案。

問題

sh檔案的內容如下:

./build/tools/caffe --help   ##執行caffe的測試功能

生成之後執行這個sh檔案出錯:

-bash: ./examples/mnist/bb.sh: Permission denied

在examples/mnist檔案下檢視所有的sh檔案:
這裡寫圖片描述
發現之前已有的可以直接執行的sh檔案都是綠色的,自己新建立的不能執行的sh檔案是灰色的,說明自己建立的檔案是沒有可執行許可權的。

解決辦法1

在自己建立的bb.sh檔案的時候如下命令即可:

chmod +x ./examples/mnist/bb.sh

執行後發現沒有輸出,但是也沒報錯誤了。現在, 在examples/mnist檔案下檢視所有的sh檔案:
這裡寫圖片描述
現在發現bb.sh檔案的顏色變了。執行chmod+x也是為了給該sh檔案加了可執行的許可權。在linux下可以通過:ls -al, 檢視目錄下所有檔案的讀寫以及可執行的許可權。
再按照之前的方法執行sh檔案:
這裡寫圖片描述

執行成功!!!!

解決辦法2

直接執行指令:用sh指令來執行即可。

sh ./examples/mnist/test_lenet.sh

但是這樣sh檔案是沒有可執行的許可權的,只能通過sh指令來執行。