服务器上自己新建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文件:
服务器上自己新建sh文件运行Permission denied的解决办法_第1张图片

运行成功!!!!

解决办法2

直接执行指令:用sh指令来执行即可。

sh ./examples/mnist/test_lenet.sh

但是这样sh文件是没有可执行的权限的,只能通过sh指令来执行。

你可能感兴趣的:(caffe学习笔记,linux)