линия Шебанга не работает в R-скрипте - PullRequest
12 голосов
/ 27 июня 2010

У меня есть следующий скрипт

#!/usr/bin/Rscript

print ("shebang works")

в файле с именем shebang.r. Когда я запускаю его из командной строки, используя Rscript, он работает

$ Rscript shebang.r

но когда я запускаю его только из командной строки

$ shebang.r

Это не работает. Команда shebang.r не найдена.

Если я печатаю (основываясь на других примерах, которые я видел)

$ ./shebang.r

Мне отказано в разрешении.

Да, Rscript находится в каталоге / usr / bin

Ответы [ 2 ]

13 голосов
/ 27 июня 2010

Сделать файл исполняемым.

chmod 755 shebang.r
2 голосов
/ 27 июня 2010

В дополнение к ответу Sjoerd ... Только команды, перечисленные в переменной окружения PATH, проверяются на выполнение команд.Вам нужно набрать ./shebang.r (в отличие от shebang.r), если текущий каталог, известный как ., не находится в вашем PATH.

Для проверки PATH введите

echo $PATH

Чтобы добавить . к PATH, введите

export PATH="$PATH:."

. Вы можете добавить эту строку в ~/.bashrc, чтобы автоматически это происходило, если вы открываете новую оболочку.

...