糟糕的解释器:shell脚本ls ubuntu中的权限被拒绝

时间:2014-03-28 07:40:00

标签: linux shell

我是shell脚本的新手。 所以我正在编写shell脚本,使用ls命令列出目录中可用的所有文件。

但是我收到错误的错误解释器:Permission denied

#!/home/gaurav

echo "Welcome bash shell scripting"
ls
echo "this complets the listing of directories"

我想获得“/ home / gaurav”这条路径的列表

由于

3 个答案:

答案 0 :(得分:3)

这一行...

#!/home/gaurav

...表示“而不是使用/bin/bash,使用/home/guarav作为运行此文件的程序”。这不是你想要的。你想要的是:

cd /home/gaurav # at the top, or
ls /home/gaurav # between echoes

答案 1 :(得分:2)

问题在于这一行:

#!/home/gaurav

这叫做shebang,它应该是这样的bash / shell解释器:

#!/bin/bash

解释并执行您的脚本。由于/home/gaurav不是有效的翻译,因此您会收到该错误。

您可能希望在脚本中使用此功能:

ls /home/gaurav

列出/home/gaurav路径中的所有文件/目录。

答案 2 :(得分:2)

在启动脚本时添加#!/ bin / bash或#!/ bin / sh而不是#!/ home / gaurav line。

因为在运行shell脚本时,您必须提供运行哪个bash或sh的路径来执行该脚本。