12

我有以下脚本

#!/usr/bin/Rscript

print ("shebang works")

在名为 shebang.r 的文件中。当我使用 Rscript 从命令行运行它时,它可以工作

$ Rscript shebang.r

但是当我单独从命令行运行它时

$ shebang.r

它不起作用。未找到 shebang.r 命令。

如果我输入(基于我见过的其他示例)

$ ./shebang.r

我得到许可被拒绝。

是的,Rscript 位于 /usr/bin 目录

4

2 回答 2

13

使文件可执行。

chmod 755 shebang.r
于 2010-06-27T17:14:20.090 回答
2

除了 Sjoerd 的回答...仅PATH检查环境变量中列出的目录以查找要运行的命令。如果当前目录(称为./shebang.r)不在您的.shebang.r.PATH

要检查PATH,请键入

echo $PATH

要添加.PATH,请键入

export PATH="$PATH:."

如果您打开一个新的 shell ,您可以将此行添加到您的行中~/.bashrc以使其自动发生。

于 2010-06-27T17:30:15.600 回答