我有以下脚本
#!/usr/bin/Rscript
print ("shebang works")
在一个名为shebang.r的文件中。当我使用Rscript从命令行运行它时,它工作
$ Rscript shebang.r
但是当我单独从命令行运行它时
$ shebang.r
它不起作用。找不到shebang.r命令。
如果我输入(根据我见过的其他例子)
$ ./shebang.r
我被许可拒绝了。
是的,Rscript位于/ usr / bin目录中
我有以下脚本
#!/usr/bin/Rscript
print ("shebang works")
在一个名为shebang.r的文件中。当我使用Rscript从命令行运行它时,它工作
$ Rscript shebang.r
但是当我单独从命令行运行它时
$ shebang.r
它不起作用。找不到shebang.r命令。
如果我输入(根据我见过的其他例子)
$ ./shebang.r
我被许可拒绝了。
是的,Rscript位于/ usr / bin目录中
使文件可执行。
chmod 755 shebang.r
使文件可执行。
chmod 755 shebang.r
除了Sjoerd的回答......只有环境变量中列出的目录 PATH
检查要运行的命令。你需要输入 ./shebang.r
(而不仅仅是 shebang.r
)如果是当前目录,则称为 .
,不在你的 PATH
。
检查 PATH
,键入
echo $PATH
加上 .
至 PATH
,键入
export PATH="$PATH:."
您可以将此行添加到您的 ~/.bashrc
如果你打开一个新的shell,它会自动发生。