Линия Шебанга не работает в сценарии R

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

#!/usr/bin/Rscript

print ("shebang works")

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

$ Rscript shebang.r

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

$ shebang.r

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

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

$ ./shebang.r

Я получил разрешение отказано.

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

2 ответа

Решение

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

chmod 755 shebang.r

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

Проверить PATH, тип

echo $PATH

Добавить . в PATH, тип

export PATH="$PATH:."

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

Другие вопросы по тегам